【问题标题】:Json data parsing using php [duplicate]使用php解析Json数据[重复]
【发布时间】:2017-09-01 02:51:02
【问题描述】:
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "http://partners.api.skyscanner.net/apiservices/browsequotes/v1.0/IN/INR/en-US/del/ccu/2017-04-20/?apikey=prtl6749387986743898559646983194");

curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($curl);
curl_close($curl);

print_r(json_decode($result));

如何解析以上代码的运营商名称和报价

【问题讨论】:

  • 你的 json 在我看来更像是 XML。所以继续了解该信息。
  • 那个。是。 XML。 JSON!= XML。完全不同。 PHP 具有 XML 解析功能。使用那些。
  • @ravitopa 嗯...不。去做你自己的工作吧:/
  • 没有时间像现在这样学习。

标签: php json curl


【解决方案1】:

你快到了。试试这样的:

您可以使用json_decode($result, true),它将被视为关联数组而不是stdClass

<?php
$curl = curl_init();

curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_URL, "http://partners.api.skyscanner.net/apiservices/browsequotes/v1.0/IN/INR/en-US/del/ccu/2017-04-20/?apikey=prtl6749387986743898559646983194");
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);

$result = curl_exec($curl); // is json
curl_close($curl);

$json = @json_decode($result);
echo "<pre>";
var_dump($json);
echo "</pre>";

echo "<pre>";
foreach ($json->Quotes as $quote) {
    print_r($quote);
}
echo "</pre>";

echo "<pre>";
foreach ($json->Places as $place) {
    print_r($place);
}
echo "</pre>";

echo "<pre>";
foreach ($json->Carriers as $carrier) {
    print_r($quote);
}
echo "</pre>";

?>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-12-04
    • 1970-01-01
    • 2013-11-15
    • 1970-01-01
    • 2017-07-31
    • 2021-03-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多