$data = json_decode($json,true);
echo $json;
当我使用json_decode时,我会返回一个json树,如下所示:
[
"name",
[
"jason",
"carl",
"simpson",
"crew",
"marx"
]
]
那么,我如何使用foreach
来获取所有的名称值呢?
像这样:
<?php
$json = <<<JSON
[
"name",
[
"jason",
"carl",
"simpson",
"crew",
"marx"
]
]
JSON;
$data = json_decode($json);
foreach($data[1] as $name) {
echo "$name'n";
}
?>
输出:
$ php test.php
jason
carl
simpson
crew
marx
编辑
json数据基本上是一个数组,其中$data[0]
是值名称,$data[1]
是一个子数组,它具有您想要的名称
foreach ($data[1] as $name_value) {
// do something with $name_value
}
如果它总是相同的结构,您可以在$data[1]
上循环。
但它看起来像是某种键前缀结构。然后为了可靠性,我会使用:
$key = array_search("name", $data);
if ($key !== FALSE)
foreach ($data[$key + 1] as $name) {
print $name;
}
$names=$data['name'];