如何正确迭代数组?

时间:2017-03-24 03:43:51

标签: php arrays json string iterator

我有一个$content变量,echo $content显示以下内容:

{
   "ID": 181271,
   "version_id": 2137,
   "theme_id": 2,
   "score": null,
   "showstopper": 0
}

显然echo $content['ID']应显示181271

所以我需要迭代所有字段。我在做:

 foreach ($content as $key => $value) 
 {
      echo $key ;
      echo $value;
 }

它给了我一些疯狂的结果!

incrementing 1 exists 1 wasRecentlyCreated timestamps 1

预期结果:

ID 181271
version_id 2137
etc...

2 个答案:

答案 0 :(得分:2)

Hope this will work, PHP code demo

使用此$array = json_decode($content, true);将json字符串转换为数组     

$content = '{"ID":181271,"version_id":2137,"theme_id":2, "score":null,"showstopper":0}';
$array = json_decode($content, true);
foreach ($array as $key => $value)
{
    echo $key;
    echo $value;
}

答案 1 :(得分:1)

因为它是一个json字符串,而不是一个数组。你必须将json_decode放入一个数组中。然后你可以访问它。