我收到了这个请求。
{ "area": [
{
"area": "kothrud"
},
{
"area": "katraj"
}
]
}
我希望通过根据上述请求在数据库中搜索记录来提供响应。我将如何解码json数组并分别使用每个区域字段。
答案 0 :(得分:25)
你的字符串不是一个有效的json开头。
有效的json将是,
{
"area": [
{
"area": "kothrud"
},
{
"area": "katraj"
}
]
}
如果你做json_decode
,它会产生,
stdClass Object
(
[area] => Array
(
[0] => stdClass Object
(
[area] => kothrud
)
[1] => stdClass Object
(
[area] => katraj
)
)
)
更新以使用
$string = '
{
"area": [
{
"area": "kothrud"
},
{
"area": "katraj"
}
]
}
';
$area = json_decode($string, true);
foreach($area['area'] as $i => $v)
{
echo $v['area'].'<br/>';
}
<强>输出:强>
kothrud
katraj
更新#2:
代表true
:
如果为TRUE,则返回的对象将转换为关联数组。有关详细信息,请click here
答案 1 :(得分:5)
您可以使用json_decode
功能
foreach (json_decode($response) as $area)
{
print_r($area); // this is your area from json response
}
请参阅此fiddle