显示控制器代码点火器视图中的阵列阵列


Display array of arrays in view from controller codeigniter

我正试图在我的视图中显示一个或多个数组,但我在如何做到这一点上遇到了困难,所以任何帮助都将不胜感激:)

我在模型中的阵列阵列:

$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) "d@gmail.com" ["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" } } } 

意味着有一个用户要显示

请帮忙,因为我很困惑。

非常感谢。

您面临的问题是,您希望$this->model->getUserDetails()返回一个带有用户详细信息的单个数组。它实际上是在返回您关心的嵌套在其他几个数组中的数组。

更改此行:

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

收件人:

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

我相信你的问题会得到解决。

尽管那条线看起来不那么好看!如果您希望getUserDetails()函数只返回关于单个用户(可能是当前登录的用户)的单个数组,那么我建议更改该函数的返回值。