我的代码:
$json_data = file_get_contents($json_url,0,null,null);
$json_output = json_decode($json_data);
var_dump($json_output);
这就是var_dump在一个大行中吐出的内容,根本没有格式化:
object(stdClass)#1 (1) { ["timetableresult"]=> object(stdClass)#2 (1) { ["ttitem"]=> array(17) { [0]=> object(stdClass)#3 (1) { ["segment"]=> array(8) { [0]=> object(stdClass)#4 (3) { ["segmentid"]=> object(stdClass)#5 (2) { ["mot"]=> object(stdClass)#6 (3) { ["@displaytype"]=> string(1) "G" ["@type"]=> string(1) "G" ["#text"]=> string(5) "GÃ¥ng" } ["distance"]=> int(1008) } ["departure"]=> object(stdClass)#7 (2)... etc.etc.
我做错了什么?
答案 0 :(得分:6)
var_dump
打印换行符。浏览器不会呈现换行符。
尝试echo "<pre>"; var_dump($json_output); echo "</pre>";
答案 1 :(得分:1)
您正在进行var转储,以访问您将执行以下操作的属性: $ seg_id = $ json_output-&gt; timetableresult-&gt; ttitem-&gt; segment [0] - &gt; segmentid; 我并没有真正仔细研究你的json的结构,但这大概是你想要的。
或... 如果你这样做 foreach($ json_output-&gt; timetableresult-&gt; ttitem as $ item){ 后续代码var_dump($项目); }
您将开始了解如何访问所需的所有部分。