我在使用PHP中的json_decode()函数在JSON中读取大量数据时遇到了非常困难的时期。基本上我需要阅读基本数据来显示航班日期的起源和目的地。
应该是这样的:
20 solutions found.
Solution# 1 Sale Price: BRL2919.54
Slice 0
TA 916 GRU 2015-06-16T06:15-03:00 LIM 2015-06-16T09:20-05:00
AV 962 LIM 2015-06-16T10:04-05:00 MIA 2015-06-16T16:48-04:00
这是JSON代码:http://pastebin.com/dH16RriT
当我尝试转换它并读取时,它带有NULL数据。
$data = json_decode($results, true); // $results is a variable with
the JSON content from the URL above
echo $data['tripOption']['saleTotal']; // just an example
答案 0 :(得分:0)
我从你发布的json结构解码数据没有问题。这是一个简单的示例脚本,它转储了解码后的数组结构:
<?php
$json = file_get_contents('./data.json');
$data = json_decode($json, true);
print_r($data);
关于您尝试且无法提取的特定数据:您必须注意使用正确的&#34;路径&#34;在数据结构内部。这个有效:
print_r($data['trips']['tripOption']);
因为那个是一个数组,你必须在那里找到一个特定的条目来获得你期望的输出:
echo $data['trips']['tripOption'][0]['saleTotal']; // just an example
答案 1 :(得分:0)
是的,您应该使用
print_r($a['trips']['tripOption'][0]['saleTotal'])
如果要读取该数组中的数据,可以执行以下操作:
$data = json_decode($s,true);
foreach ($data['trips']['tripOption'] as $item){
print_r($item['saleTotal'] . "\n");
};