Php 为什么这个模型会返回;“非对象错误”;,它什么时候在控制器中工作?

Php 为什么这个模型会返回;“非对象错误”;,它什么时候在控制器中工作?,php,debugging,codeigniter,Php,Debugging,Codeigniter,在我的控制器中,我从那里获取数据(工作正常): 要从类模型函数中获取数据,请执行以下操作: class Shopci_model extends CI_Controller { function __construct() { parent::__construct(); //model constructor } //display sale itmes on shopci_view.php functio

在我的控制器中,我从那里获取数据(工作正常):

要从类模型函数中获取数据,请执行以下操作:

    class Shopci_model extends CI_Controller {

      function __construct()
      {
        parent::__construct(); //model constructor
      }

      //display sale itmes on shopci_view.php
      function sale_items()
      {    

        $query = $this->db->query('MY DB QUERY - SAME AS ABOVE');

        return $query->result();
      }

  }
//load model, auto connect to db
$this->load->model('Shopci_model', '', TRUE);    
//Display items for sale
$data['query'] = $this->Shopci_model->sale_items();  
$this->load->view('shopci_view', $data);  
新控制器功能:

    class Shopci_model extends CI_Controller {

      function __construct()
      {
        parent::__construct(); //model constructor
      }

      //display sale itmes on shopci_view.php
      function sale_items()
      {    

        $query = $this->db->query('MY DB QUERY - SAME AS ABOVE');

        return $query->result();
      }

  }
//load model, auto connect to db
$this->load->model('Shopci_model', '', TRUE);    
//Display items for sale
$data['query'] = $this->Shopci_model->sale_items();  
$this->load->view('shopci_view', $data);  
错误:

致命错误:对中的非对象调用成员函数result() shopci_视图

这是切换到模型之前视图中的行(未更改视图):


感谢您的帮助


谢谢。

在您的模型中,您将$query作为result()数组返回给控制器

因此,您不能再次使用“foreach$query->result()”——因为您已经这样做了

这应该行得通

  <?php foreach($query as $row): ?> 


在模型中,您希望返回要传递给控制器的数据。所以在你的模型中

function sale_items()
{
    $query = $this->db->query(SAME AS OLD);
    return $query;
}
然后,您的控制器将是相同的,视图中的foreach应该如下所示

<?php foreach ($query as $row): ?>

function sale_items()
{
    $query = $this->db->query(SAME AS OLD);
    return $query;
}
<?php foreach ($query as $row): ?>