【发布时间】:2012-02-20 08:08:58
【问题描述】:
我有以下内容:
include('php/get_recipe_byID.php');
$jsonstring1 = $recipe_byidarr;
$recip = json_decode($recipe_byidarr, true);
print_r($recip);
foreach ($recip['Data']['Recipes'] as $key => $newrecipe) {
// echo '<li>
// <a href="/recipe_search.php?id=' . $recipe['ID'] . '">';
echo 'seas';
echo $newrecipe['TITLE'];
echo '<br><br>';
}
当我在浏览器中调用它时,它告诉我
Fatal error: Cannot use string offset as an array in /var/www/recipe_search.php on line 43
这是 foreach 循环的行。
$recip 如下:
{"Data":{"Recipes":{"Recipe_9":{"ID":"9","TITLE":"Schnitzel","TEXT":"Alex\u00b4s Hausmannskost","COUNT_PERSONS":"4","DURATION":"40","USER_ID":"1","DATE":"2011-09-16 00:00:00"}}},"Message":null,"Code":200}
有人知道我的错误在哪里吗?
【问题讨论】:
-
似乎从 PHP5 开始你需要在使用 json_decode 之前将 $recip 显式声明为数组。在 json_decode 之前添加行
$recip = array();。只是我在谷歌上看到的一个建议:) -
我已经试过了,没用