CodeIgniter – 只返回一行?
目前,如果我正在查询数据库应该只返回一行,使用:
...query stuff... $query = $this->db->get(); $ret = $query->result(); return $ret[0]->campaign_id;
是否有一个CodeIgniter函数返回第一行? 像$query->row();
如果只有一行,直接使用查询对象的能力甚至会更好。
例如$query->campaign_id;
你刚刚回答了你自己的问题:)你可以做这样的事情:
$query = $this->db->get(); $ret = $query->row(); return $ret->campaign_id;
您可以在这里阅读更多信息: http : //www.codeigniter.com/user_guide/database/results.html
这是更好的方法,因为它可以使您得到一个结果:
$this->db->query("Your query")->row()->campaign_id;
添加到阿利森说,你可以检查是否返回一行。
// Query stuff ... $query = $this->db->get(); if ($query->num_rows() > 0) { $row = $query->row(); return $row->campaign_id; } return null; // or whatever value you want to return for no rows found
为了使代码清楚,你打算获得第一行,CodeIgniter现在允许你使用:
if ($query->num_rows() > 0) { return $query->first_row(); }
检索第一行。
$this->db->get()->row()->campaign_id;
只改变两行,你正在得到你想要的。
$query = $this->db->get(); $ret = $query->row(); return $ret->campaign_id;
尝试一下。