我的示例json数据如下,我试图解析它,但我无法使用$ response [0]或$ response [1]等获取数据...我该如何解析它?
谢谢!
[
{
"Tags": [
"diyarbakır",
"bağlar",
"patlama"
]
},
{
"Tags": [
"gazetehaberleri",
"galatasaray lisesi",
"kadri gürsel"
]
}
]
更新
$response = json_decode($response);
foreach($response as $key => $value){
echo $value;
}
警告:为foreach()提供的参数无效
答案 0 :(得分:2)
$response = json_decode($response, true);
默认情况下,第二个参数为false。通过使用true,它将它强制为关联数组。
答案 1 :(得分:1)
正如Varuog暗示的那样,你无法正确访问元素的原因是因为你似乎混淆了json_decode()
的结果。默认情况下,它将JSON对象转换为PHP对象。
您仍然可以使用$response[0]
和$response[1]
获取数据,但是从那里访问数据的方式也不同。
对于您当前的实现,要访问“Tags”元素,您必须执行以下操作:
$response = json_decode($response);
foreach($response as $key => $value){
print_r($value->{'Tags'});
}
给出了输出:
Array
(
[0] => diyarbakır
[1] => bağlar
[2] => patlama
)
如果您将json_decode()
的第二个参数设置为true
,它会将对象转换为数组,您可以通过$value['Tags']
访问它:
$response = json_decode($response, true);
foreach($response as $key => $value){
print_r($value['Tags']);
}