$query = $this->db->select('*')->from($this->table)->order_by($sql);
CI文档对此并不清楚,我不完全确定这应该如何工作...如果我有这个查询并且需要检查num_rows()并获得数组中的结果。我该怎么办?
当我使用$this->db->select('*')->from($this->table)->order_by($sql)->get();
时,我无法检查num_rows()
理想情况下,我会使用result_array()来获取数组中的结果。
答案 0 :(得分:3)
尝试使用此
$query = $this->db->order_by('column name')->get('your tablename');
//note that your result must be an object
$count = $query->num_rows();//your num rows result handler
$result = $query->result_array();//your query result
答案 1 :(得分:0)
将模型中的功能更改为:
function your_function()
{
$this->db->select('*, COUNT(*) as count');
$this->db->order_by($sql);
$query = $this->db->get('table');
if ($query->num_rows() > 0)
{
return $query->result();
}
}
将控制器中的数据传递给您的视图。
$data['data'] = $this->your_model->your_function();
然后你可以像任何其他返回的数据一样显示它。
echo $data->count;
您可能需要像表名一样编辑几个部分,但这应该可以解决问题。
:)
答案 2 :(得分:0)
更好地使用:
$result = $query->row();
$cnt = $result->count;
而不是result_array();这给你错误。 希望这可以帮助!