如何在不知道节点号的情况下从PHP中的JSON数组中获取值?
我正在接收下面具有各种权限的JSON数组。 如果您不知道它位于哪个节点,如何检查如何在不知道节点号的情况下从PHP中的JSON数组中获取值?,php,arrays,json,Php,Arrays,Json,我正在接收下面具有各种权限的JSON数组。 如果您不知道它位于哪个节点,如何检查publish\u actions[status]值?(目前在[3]中,但可以是任何其他数字) JSON数组: Array ( [data] => Array ( [0] => Array ( [permission] => installed [status] => granted ) [
publish\u actions[status]
值?(目前在[3]中,但可以是任何其他数字)
JSON数组:
Array (
[data] => Array (
[0] => Array (
[permission] => installed
[status] => granted
)
[1] => Array (
[permission] => public_profile
[status] => granted
)
[2] => Array (
[permission] => manage_pages
[status] => granted
)
[3] => Array (
[permission] => publish_actions
[status] => granted
)
[4] => Array (
[permission] => user_groups
[status] => granted
)
)
)
使用json_解码,然后迭代数组:
$publish_actions_status = '';
$array=json_decode($json_string);
foreach($array['data'] as $node){
if($node['permission']=='publish_actions'){
$publish_actions_status = $node['status'];
break;
}
}
试一试
foreach($data as $k=>$v) {
if($v['permission']=='publish_actions'){
$newarr[]['permission'] = $v['permission'];
$newarr[]['status'] = $v['status']
}
}
print_r($newarr);