在我的模型中,我有以下查询:
function myquerydata() {
$data = array();
$query = $this->db->query('select max(field1) as field11, max(field2) as field22, max(field3) as field33 from my_table');
foreach ($query->result() as $row) {
$row->field11;
$row->field22;
$row->field33;
}
}
此查询仅返回一行。
在我的控制器中,我有下一个代码:
$this->load->model('my_model');
$fields=$data['rows']=$this->my_model->myquerydata();
我的问题是如何从控制器调用数据字段11,字段22,字段33。当我申请foreach时出现错误:
foreach ($fields as $row){
echo $row->field11,
echo $row->field22,
echo $row->field33,
}
我的错误是什么?
答案 0 :(得分:2)
这样做:
function myquerydata() {
$data = array();
$query = $this->db->query('select max(field1) as field11, max(field2) as field22, max(field3) as field33 from my_table');
//return the result and call from controller
return $query->result();
}
并将以下内容放入您的控制器
$this->load->model('my_model');
$fields=$data['rows']=$this->my_model->myquerydata();
print_r($fields);
答案 1 :(得分:1)
你的函数什么也没有返回。您必须返回数据才能使用它。
return $query->result();