CodeIgniter在视图上调用模型?

时间:2014-01-15 14:42:18

标签: php codeigniter

我有一个汇总数据表的视图,这个数据是在模型上生成的。 如何在我的视图中将此模型称为张贴在我的视图中? 这就是我想用phpIgniter做的事情的等价物:

while($row = mysql_fetch_array($requet))
      {
// code of displaying my data;
      }

5 个答案:

答案 0 :(得分:13)

尝试使用 $CI =& get_instance()

然后像这样加载你的模型:

$CI->load->model('someModel')

然后像这样调用你的模型函数:

$result = $CI->someModel->somefunction()

然后使用foreach显示

foreach($result as $row){ $row->somecolumnName }

答案 1 :(得分:2)

我认为直接从视图中调用模型不是一个好主意。

您的控制器必须从模型中获取数据,然后将其发送到您的视图

$this->load->model('my_model');
$my_data['my_array'] = $this->my_model->get_my_data();
$this->load->view('your_view', $my_data);

在您的视图中使用它

foreach($my_array as $item){
    echo $item;
}

答案 2 :(得分:1)

第一个模型与数据库交互。然后加载模型并访问控制器中的相关功能。最后加载数据以从控制器查看。就是这样......你可以简单地在foreach循环中显示数据。

答案 3 :(得分:1)

我这样称呼模型方法。

<?php
$CI =& get_instance();
$CI->load->model('MyModel');
$result= $CI->MyModel->MyMethod($parameter)->result_array();        
  foreach($result as $row){ 
         echo $row['column_name'];                      
    }
?>

答案 4 :(得分:0)

您可以从视图中调用模型函数。 请记住:此解决方案针对MVC模式

型号:

function getdata() {
  $query = $this->db->query($sql);
  return $query->result_array();
}

查看:

foreach($this->modelname->getdata() as $item) {

}