数据没有从控制器传递到视图代码点火器


Data not passing from Controller to View Code Igniter

我很困惑,因为CodeIgniter的奇怪行为。我正在从模型中获取一些数据,并将其返回给控制器,并将该数据从控制器传递给视图。

控制器

function index()
    {
        $data['details'] = $this->Mymodel->Get_Details();
        $this->load->view('mypage',$data);
    }
模型

public function Get_Details() 
    {
        $query = "
                    SELECT 
                            *
                    FROM 
                            tablename
                 ";
        $result = $this->db->query($query)->result();
        return $result;
    }

视图

<?php 
 print_r($details); 
?>

问题是视图页面没有显示任何内容。如果我把print_r($data);放到Controller中,或者把print_r($result);放到Model中,结果就会显示出来。如果在select中,*被替换为单独的列名,那么输出将从Controller传递到View,并显示输出。
有任何机会有任何限制传递数据从控制器到视图?

Update:如果我使用print_r($details[0]);print_r($details[n]);,结果将被打印。如果使用print_r($details);,则页面只是空白。有什么问题吗?

在模型中试试

public function Get_Details() 
{
    $query = "
                SELECT 
                        *
                FROM 
                        tablename
             ";
    $result = $this->db->query($query);
    return $result->result();
}

您试过这段代码吗?

    public function Get_Details() 
    {
        $query = "
                    SELECT 
                            *
                    FROM 
                            tablename
                 ";
        return $this->db->query($query);
    }
<<p> 视图/strong>
<?php 
 print_r($details->result()); 
?>

result()函数以对象数组的形式返回查询结果,如果失败则返回空数组。

您需要在视图中循环遍历它以获得预期的结果。

您可以在这里查看详细信息:http://ellislab.com/codeigniter/user-guide/database/results.html