麻烦通过从四角JSON馈送创建的阵列循环(Trouble looping through an ar

2019-10-29 07:35发布

我正在一个侧项目,并在其核心的,我需要一个四方的JSON饲料到一个数组,我可以遍历。 我的代码如下,并导致以下错误:

Warning: Invalid argument supplied for foreach() in /homepages/7/d346835943/htdocs/dealrub/results.php on line 56

这里是JSON提要,我正在正确地获取的示例:

$jsonurl = "http://api.foursquare.com/v2/venues/search?ll=".$lat.",".$lon."&limit=100";
$json = file_get_contents($jsonurl,0,null,null);
$json_output = json_encode($json, true);

foreach ( $json_output->response->groups[0]->items as $items )
{
     echo "{$items->name}\n";
}

任何帮助,我在做什么错将不胜感激。 我离开了jsonurl没有我的API密钥,但它成功地返回JSON结果。

Answer 1:

  1. 你必须使用json_decode
  2. 检查是否$json_ouput是不是空的。
  3. 你逝去的true作为第二个参数json_decode (假设你是不是正确的),这意味着它返回一个关联数组。

    要么省略:

     $json_output = json_decode($json); 

    或访问items作为数组:

     foreach ( $json_output['response']['groups'][0]['items'] as $items ) 


Answer 2:

您使用一个字符串,它是已经在JSON json_encode。 尝试json_decode代替;)



文章来源: Trouble looping through an array created from a foursquare JSON feed