Foreach empty from json


Foreach empty from json

我有以下网址:

https://graph.facebook.com/123456/likes?access_token=__ACCESS_TOKEN__&format=json

然后我做了:

$likesList = json_decode(file_get_contents("https://graph.facebook.com/123456/likes?access_token=$access_token&format=json"),true);

产生例如

{
"data": [
  {
     "name": "yo yo yo",
     "category": "Entertainer",
     "id": "45640987076",
     "created_time": "2012-04-18T16:14:09+0000"
  },
  {
     "name": "Tony Smith",
     "category": "Musician/band",
     "id": "456456456456",
     "created_time": "2012-02-22T06:56:18+0000"
  },
  {
     "name": "Stations",
     "category": "Company",
     "id": "567657567",
     "created_time": "2012-01-30T23:08:39+0000"
  }
]
}

然后我想列出例如返回的所有名称:

foreach ($likesList->data as $element2){ 
    $name = $element2[name];
    echo $name; 
}

但它是空的?

请参阅数据结构的可视化。

当您接收数组时,您需要$list["data"]而不是$list->data。另外不要忘记引用数组键"name"

foreach ($likesList['data'] as $element2){ 
     $name = $element2['name'];
     echo $name; 
}

使用参数 true json_decode后,您将拥有关联数组。您可以通过字符串键访问值。就像上面的例子一样。