【发布时间】:2011-11-05 05:40:54
【问题描述】:
我正在尝试从如下所示的 JSON 对象中检索数据:
stdClass Object
(
[query] => stdClass Object
(
[results] => stdClass Object
(
[quote] => Array
(
[0] => stdClass Object
(
[foo] => bar
)
[1] => stdClass Object
(
[foo] => blah
)
我这样创建对象:
$json = curl_exec($session);
$stock_data = json_decode($json);
我已经阅读了几篇关于如何做到这一点的帖子 (This one was extremely useful),但我仍然卡住了。我知道我需要遍历数据,但我不确定 foreach 语句会是什么样子(即它们的深度,可以这么说)。我意识到这应该是相对简单的,但我现在无法理解它(这就是被疏散对你的影响)。任何帮助将不胜感激!
编辑:想了一会儿,我想到了这个:
foreach( $stock_data->query->results as $quote) {
foreach ($quote as $entry) {
print $entry->{'foo'} ;
}
}
这将成功打印 bar 和 blah
【问题讨论】:
-
您要遍历哪个级别?它基本上是 PHP 数组和对象的混合,例如
echo $object->query->results->quote[0]->foo -
我想遍历引用中的每个对象。不过我设法弄明白了!