-1

こんにちは私はcodeigniterの配列に問題があります。配列をビューに渡す方法です。コードが機能しません。

モデル :

 public function get_all()
    {           

        $query = $this->db->get('category');
        $result = $query->result_array();                      
        foreach( $result as $key => $row )
        {

          $query = $this->db->get_where('categorysub',   array('categoryID'=>$row['categoryID']));

            $row['childmenus'] = $query->result_array();
            $result[$key] = $row;

        }            
        return $result;            
    }

コントローラー:

$this->load->model(array('mcategory','mcategorysub'));
    $data['title']= 'Detail Kategori';
    $data[] = array(
            'nestedmenu' => $this->mcategory->get_all());

    $data['nestedmenu'] = array($data);
    $this->load->view($this->template, $data);

意見 :

   foreach($nestedmenu as $nestedmenu_type)
{

    echo "<h2>" . $nestedmenu_type['name'] . "</h2>";
    echo "<ul>";        
    foreach($nestedmenu_type['childmenus'] as $childmenu)
    {        
        echo "<li>" . $childmenu['name'] . "</li>";
    }        
    echo "</ul>";

}

プログラムは次のような結果を表示する必要があります:

Menu 1
     menu 1a
     menu 1b
     menu 1c
Menu 2
     menu 2a
     menu 2b
......

しかし、実際には次のようなエラーが発生します:

メニュー1

PHPエラーが発生しました重大度:通知メッセージ:未定義のインデックス:childmenusファイル名:admin / vcategory_read.php行番号:34

A PHP Error was encountered

重大度:警告

メッセージ:foreach()に無効な引数が指定されました

ファイル名:admin / vcategory_read.php

行番号:34

4

1 に答える 1

0

見た目からして。リソースを$query->result_array()返します。foreach の入力として使用することはできません。

于 2013-01-20T09:21:48.077 に答える