控制器为何无法识别从模型传递来的数据?

时间:2019-06-06 11:15:26

标签: php codeigniter

我正在尝试使用模型从数据库中获取数据,然后将其用于视图中。我将查询结果返回给控制器,它给了我未定义的变量通知。

我首先尝试在控制器中执行select(get)语句,然后在定义要使用的特定行之前将结果数组定义为行,然后将其传递到视图。那引发了一个错误,然后我尝试了同样的事情,但是有了一个模型并返回到控制器:

  

controller.php

public function Home()
{
  $this->load->model('Main');
  $this->Main->getresults();

  $this->load->view('header', $data);
}
  

model.php

public function getresults() {

  $query = $this->db->get('table');
  foreach ($query->result_array() as $row) {

    $data = array(
      'column' => $row["column"]
    );
}
return $data;
}

view.php

<?php echo $column; ?>

我希望将$data返回给控制器,以便在视图中使用它,但是它仍然会引发未定义变量的通知。

1 个答案:

答案 0 :(得分:3)

在控制器中,您无需分配和发送数据即可查看。 在此处更改代码:

public function Home()
{
  $this->load->model('Main');
  $data = $this->Main->getresults();

  $this->load->view('header', $data);
}