2016-04-03 154 views
1

我想顯示在我看來,一個或多個陣列鑑於數組的數組,我有關於如何做到這一點困難,所以任何幫助將非常感激:)顯示從控制器笨

我的陣列在該模型中的陣列:

$user = array(); 
... 
$user[$id] = array(
      'id' => $userId[$id], 
      'match' => $percentage 
     ); 
return array('userInfo' => $user); 

存儲來自某些用戶的信息。我將它傳遞給控制器​​,然後從那裏到我想要在$ user數組中顯示信息的視圖。在數組中可以是一個或多個用戶。

這裏是我的控制器:

$result = $this->model->getUserDetails(); 

$this->load->view('view', array('user' => $result); 
在我要打印的信息視圖

,但我不知道該怎麼做,因爲我從來沒有與數組的數組工作,我有點糊塗了。

這裏是視圖:

<?php foreach ($user['userInfo'] as $index => $value) { 
    echo $value[$index]['id'].' '.$value[$index]['match']; 
?> 

如果我去做了這樣

echo $value['id']; 

echo $index['id']; 

認爲無顯示或不如'id'索引

這就是我對

var_dump($result); 

array(1) { ["result"]=> array(1) { [0]=> array(11) { 
["id"]=> string(2) "55" 
["fname"]=> string(6) "Dan" ["lname"]=> string(5) "Re" 
["email"]=> string(18) "[email protected]" ["username"]=> string(6) "dan"  
["gender"]=> string(4) "Male" ["DOB"]=> string(10) "1990-07-13" 
["profile_image"]=> string(8) "dan.jpg" 
["short_des"]=> string(147) "I love singing and playing music" 
["pwd"]=> string(4) "dan" ["confirm_pwd"]=> string(4) "dan" } } } 

這意味着有要顯示

PLS做幫助,我很困惑一個用戶。

非常感謝。

+1

將var_dump($ result);的內容添加到您的問題中。 – Keeleon

+1

我已經更新了'var_dump($ result);' – Nynaeve

回答

1

您面臨的問題是,您期望$this->model->getUserDetails()返回帶有用戶詳細信息的單個陣列。它實際上是返回你關心嵌套在其他幾個數組中的數組。

改變這一行:

$this->load->view('view', array('user' => $result); 

要:

$this->load->view('view', array('user' => $result['result'][0]); 

而且我相信你的問題將得到解決。

雖然這條線看起來不太漂亮!如果你希望你的getUserDetails()函數返回一個關於單個用戶的單個數組(大概是當前登錄的),那麼我會建議改變該函數的返回值。

+0

結果的問題,數組$ result可以容納一個或多個用戶,具體取決於模型中函數的結果,所以我希望它返回與函數返回一樣多的數量,而不僅僅是一個;新的產品線是否會與許多用戶一起工作? – Nynaeve

+1

@Nynaeve然後問題就是你如何定義「工作」。「如果你把它改成'[0]',那麼這行就會被編譯,並且頁面會被渲染,如果你保留'[0]'硬編碼,'$ user'將永遠是無論在'getUserDetails()'函數中發生的任何行首先從查詢中返回。 – Keeleon