2014-06-30 47 views
1

檢查是否重複,它會出現,但我發現的其他問題不回答這個問題。Codeigniter將數據從控制器傳遞到查看/ w複雜陣列

我使用CodeIgniter,我想在我的視圖中訪問'複雜'數組(從數據庫)。

Codeigniter passing data from controller to view 鏈接回答我的問題的一部分,但它是一個簡單的數組,像這樣:

在控制器:

$data = array(
    'title' => 'title 1', 
    'user' => 'user 1' 
); 
$this->layout->view('example/test', $data); 

在視圖

echo $title.$user; 

所以我所得到的,不過是什麼F中的陣中多了幾分複雜的東西:

$data = array(
    array(
    'title' => 'title 1', 
    'user' => 'user 1' 
    ), 
    array(
    'title' => 'title 2', 
    'user' => 'user 2' 
    ) 
); 

我如何可以訪問此類型的數組在我的看法?

+1

你通過'$ data' ..這是不實際的數組,這個陣列中的所有字母數字鍵是指視圖變量。 – Girish

回答

2

你應該換外陣列,並給它使用$myAwesomeArray

+0

謝謝,這個成果很好。 :) – rottenoats

2

使用該控制器中這樣

$data = array(
    'myAwesomeArray' => array(
     array(
     'title' => 'title 1', 
     'user' => 'user 1' 
     ), 
     array(
     'title' => 'title 2', 
     'user' => 'user 2' 
     ) 
    ) 
); 

的關鍵,你應該能夠訪問視圖中的數據:

$data = array(
        array(
        'title' => 'title 1', 
        'user' => 'user 1' 
        ), 
        array(
        'title' => 'title 2', 
        'user' => 'user 2' 
        ) 
       ); 
     $content = array('data'=> $data); 
$this->layout->view('example/test', $data); 

鑑於查看文件:

foreach($data as $key=>$val) 
{ 
    echo $val['title'].$val['user']; 
} 
+0

這也很好。我想我會結合這兩個答案。 – rottenoats

1

你可以簡單地嘗試這個辦法:

$data['content'] = array(
        array(
         'title' => 'title 1', 
         'user' => 'user 1' 
         ), 
        array(
         'title' => 'title 2', 
          ' user' => 'user 2' 
         ) 
       ); 

$this->load->view('example/test',$data); 

在View:鑑於方法

foreach($content as $value)://to traverse the data array .... 

endforeach; 
相關問題