0

$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';

次に、キーがaとして存在するかどうかの$children_menu配列内かどうかも確認し、そこにも値を設定します。$menu_array$accessid_child_menucan_view = true

$menu_array['children_menu'][1]['can_view']='true';
4

1 に答える 1

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;
  }

}

(子アイテムは、親アイテムが表示されている場合にのみ表示できます。)

于 2012-12-14T19:53:49.357 に答える