我有一个名为$menu_array
的数组;目前看起来像这样
[0] => Array
(
[id_parent_menu] => 4
[parent_info] => test
[children_menu] => Array
(
[0] => Array
(
[id_child_menu] => 21
[children_info] => test
)
[1] => Array
(
[id_child_menu] => 22
[children_info] => test2.
)
)
)
等等。
我还有另一个数组$access
,如下所示:
array(
[4]='true'
[22]='true'
)
我要做的是检查$access
数组的密钥是否作为id_parent_menu
存在,然后输入密钥和值
$menu_array[can_view]='true';
然后,如果$children_menu
密钥作为$menu_array
存在并且设置值$access
,还要检查id_child_menu
内的can_view = true
数组内是否存在在那里。
$menu_array['children_menu'][1]['can_view']='true';
答案 0 :(得分:1)
foreach ($menu_array as $key => $value){
if(isset($access[$value['id_parent_menu']]) && $access[$value['id_parent_menu']])
{
$menu_array[$key]['can_view']=true;
foreach($value['children_menu'] as $key2 => $value2)
if(isset($access[$value2['id_child_menu']]) && $access[$value2['id_child_menu']])
$menu_array[$key]['children_menu'][$key2]['can_view']=true;
}
}
(仅当父项可见时,子项才可见。)