0

CodeIgniter を使用して DB からデータを取得して動的 UI を構築しようとしていますが、配列の構築で問題に直面しています。

要件:

親メニュー項目を配列で取得します。次に、各親アイテムに対応する子アイテムを取得します。

親要素のデータを取得するコード::

$data['menu'] = $this->Menu->get_admin_menu_data();

これにより、3つのレコードが得られます

echo  "before loop menu" . count($data['menu']) . "</br>"; //prints 3

ここで、親アイテムごとに foreach ループを実行して、子アイテムを取得します

foreach($data['menu'] as $menu){
   $data['menu']['menu_item'] =  $this->Menu->get_admin_menu_item_data($menu->ad_menu_id);
echo  "inside loop menu " . count($data['menu']) . "</br>"; //prints 4
}

これを行うとすぐに、メニューの数が 4 に増え、UI でエラーが発生します。私は PHP を初めて使用するので、このタイプのデータを保持するための構造を作成する最良の方法は何かを確信しています。

助けてください!!!!

4

2 に答える 2

1

3つのキーと値のペアが含ま$data['menu']れているが、設定されていない場合、ステートメント$data['menu']['menu_item']

  $data['menu']['menu_item'] 
     =  $this->Menu->get_admin_menu_item_data($menu->ad_menu_id);

これだけを設定します。

したがってcount( $data['menu'] )、後で4つの要素を返します-新しく追加された'menu_item'キーを含みます。

于 2012-04-29T17:08:38.253 に答える
0

CodeIgniterはわかりませんが、静的変数を上書きします

$data['menu']['menu_item'] = "someting"

決して意味がありません。の結果を本当にどこに保存しますか

$this->Menu->get_admin_menu_item_data($menu->ad_menu_id);

var_dumpを使用して、変数の内容を確認できます。確認する必要があります。

于 2012-04-29T17:07:32.753 に答える