PHP中的JSON解析指令
我需要一些帮助来解析PHP中的JSON 下面的JSON位于变量$response中PHP中的JSON解析指令,php,json,Php,Json,我需要一些帮助来解析PHP中的JSON 下面的JSON位于变量$response中 [ { "id": "6b3c7ccf7291170020b657aa06b6cfd3", "app": "passbook", "os": "ios", "registered": "2017-01-10T01:19:27Z", "pushToken": "bf32dc858e02bddbbd21df9e95b094e5b0edb6cf0ebd8b6c75779986
[
{
"id": "6b3c7ccf7291170020b657aa06b6cfd3",
"app": "passbook",
"os": "ios",
"registered": "2017-01-10T01:19:27Z",
"pushToken": "bf32dc858e02bddbbd21df9e95b094e5b0edb6cf0ebd8b6c757799866c3ce5e3",
"lastSeen": "2017-04-19T21:07:03Z"
},
{
"id": "9ac290d5186a081c5498c604db9f8d59",
"app": "passbook",
"os": "ios",
"registered": "2017-02-16T16:15:02Z",
"pushToken": "702c5f8077bda33d2cbafbcabba78b230668877ef08abbff5420017be221700d",
"lastSeen": "2017-02-16T16:15:02Z"
}
]
我需要从两者获取id和应用程序详细信息并显示它
我的密码是
$json = json_decode($response,true);
foreach ($json as $row) {
echo $row['id'];
echo $row['app'];
}
我发现了错误
PHP警告:为foreach()提供的参数无效
你的代码对我来说很好 不为您工作的可能原因:- 1.可能是您的
json
变量是其他变量,而不是$response
2.$resonse
有更多数据,这些数据可能有一些问题(在这种情况下,请向我们显示完整数据)
3.可能是在解码($response,true)之前的其他代码是否已经存在CIH正在处理的$response
请检查以下内容:-
<?php
$response = '[
{
"id": "6b3c7ccf7291170020b657aa06b6cfd3",
"app": "passbook",
"os": "ios",
"registered": "2017-01-10T01:19:27Z",
"pushToken": "bf32dc858e02bddbbd21df9e95b094e5b0edb6cf0ebd8b6c757799866c3ce5e3",
"lastSeen": "2017-04-19T21:07:03Z"
},
{
"id": "9ac290d5186a081c5498c604db9f8d59",
"app": "passbook",
"os": "ios",
"registered": "2017-02-16T16:15:02Z",
"pushToken": "702c5f8077bda33d2cbafbcabba78b230668877ef08abbff5420017be221700d",
"lastSeen": "2017-02-16T16:15:02Z"
}
]';
$json = json_decode($response,true);
echo "<pre/>";print_r($json);
foreach ($json as $row) {
echo $row['id'];
echo PHP_EOL;
echo $row['app'];
echo PHP_EOL;
}
您遇到了什么问题?我遇到了一个错误PHP警告:为foreach()提供的参数无效上述代码将用于解析JSON并获取id和应用程序详细信息。您面临的问题是什么?上面的JSON是有效的。请打印$json数组。如果JSON被解码,您就可以克服这个问题。它起作用了。