num_rows()处的错误为未定义的成员函数。用于在codeigniter Framework中按降序显示数据。 我试过这段代码:
$this->db->select('*');
$this->db->from('albums');
$result = $this->db->order_by('album_id', 'desc');
//$result = $this->db->get('albums');
if($result->num_rows() > 0)
{
return $result;
}
为了以降序获取和显示行,我使用了上面的代码。但我在num_rows() as undefined function
收到以下错误。如何按降序打印?
答案 0 :(得分:1)
在获得行数之前,您需要执行get()
。
所以你的代码应该是这样的,
$this->db->select('*');
$this->db->from('albums');
$this->db->order_by('album_id', 'desc');
$result = $this->db->get(); // add this line
if($result->num_rows() > 0)
{
return $result;
}
get()
函数运行选择查询。
答案 1 :(得分:1)
将您的代码更改为:
$this->db->select('*');
$this->db->from('albums');
$result = $this->db->order_by('album_id', 'desc');
$result = $this->db->get('albums')->row();
if($result->num_rows() > 0)
{
return $result;
}
答案 2 :(得分:1)
使用此代码
$this ->db->select('*');
$this ->db->from('albums');
$this->db->order_by('album_id', 'desc');
$query = $this->db->get();
if($query->num_rows() > 0)
{
return $query->result();
}
如果你需要帮助打我:)
修改强>
你需要
$query->result();
要将其作为对象返回,但您希望可以使用
$query->result_array();
要将其作为数组返回,请不要按原样返回$ query:)