简体   繁体   English

查询仅在codeigniter中返回一行

[英]query return only a row in codeigniter

In my model I have the follow query: 在我的模型中,我有以下查询:

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 query only return one row. 该查询仅返回一行。

In my controller I have the next code: 在我的控制器中,我有以下代码:

$this->load->model('my_model');
$fields=$data['rows']=$this->my_model->myquerydata();

My question is how can I call the data field11, field22, field33 from controller. 我的问题是如何从控制器调用数据field11,field22,field33。 When I apply a foreach appears error: 当我应用foreach出现错误时:

foreach ($fields as $row){
  echo $row->field11,
  echo $row->field22,
  echo $row->field33,
}

What is my error? 我怎么了

Do this: 做这个:

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();
}

And place the following in your controller 并将以下内容放入您的控制器中

$this->load->model('my_model');
$fields=$data['rows']=$this->my_model->myquerydata();
print_r($fields);

Your function returns nothing. 您的函数不返回任何内容。 You must return data in order to work with it. 您必须返回数据才能使用它。

return $query->result();

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM