我正在尝试循环嵌套的JSON并打印结果,但是当我尝试时,我得到了上述错误。
<?php
$json = json_decode($orderItems);
foreach ($json as $key) {
?><p>Product: <?php echo $json[$key] -> {'name'}; ?> | Quantity: <?php echo $json[$key] -> {'quantity'}; ?></p><?php
}
?>
的print_r($ JSON)
stdClass对象([Tom] =&gt; stdClass对象([name] =&gt; Tom [数量] =&gt; 3)[Harry] =&gt; stdClass对象([name] =&gt; Harry [数量] = &gt; 1))
答案 0 :(得分:3)
您将$ json变量引用为关联数组和对象的混合。 看看下面的代码:
<?php
// return an assoc array
$json = json_decode($orderItems, true);
foreach ($json as $orderItem) {
echo '<p>Product: ' . $orderItem['name'] . ' | ';
echo 'Quantity: ' . $orderItem['quantity'] . '</p>';
}
?>
答案 1 :(得分:0)
foreach
循环没有那样工作,而php有不同的语法......
你所谓的$key
实际上是数组中的每个元素。
你正在寻找的东西可能是:
foreach($json as $element) {
?><p>Product: <?php echo $element['name']; ?> | Quantity: <?php echo $element['quantity']; ?></p><?php
}