Php 在从foursquare JSON提要创建的数组中循环时遇到问题

Php 在从foursquare JSON提要创建的数组中循环时遇到问题,php,json,loops,foreach,foursquare,Php,Json,Loops,Foreach,Foursquare,我正在做一个辅助项目,其核心是,我需要将一个foursquare 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/venue

我正在做一个辅助项目,其核心是,我需要将一个foursquare 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";
}

任何关于我做错了什么的帮助都将不胜感激。我没有使用api键就离开了jsonurl,但是它成功地返回了json结果。

您正在对已经在json中的字符串使用json\u编码。改为尝试json_解码;)

  • 你必须使用
  • 检查
    $json\u output
    是否为空
  • 您正在将
    true
    作为第二个参数传递给
    json\u decode
    (假设正确),这意味着它返回一个关联数组

    或者忽略以下内容:

    $json_output = json_decode($json);
    
    或以数组形式访问

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