在一个场景中,我需要知道查询将返回的记录集的计数,这在codeigniter中可以通过$query->num_rows()或完成$this->db->count_all_results().哪一个更好,这两者有什么区别?
dan*_*eth 47
有了num_rows()您先执行查询,然后你可以检查你有多少行了.count_all_results()另一方面,只为您提供查询将生成的行数,但不会为您提供实际的结果集.
// num rows example
$this->db->select('*');
$this->db->where('whatever');
$query = $this->db->get('table');
$num = $query->num_rows();
// here you can do something with $query
// count all example
$this->db->where('whatever');
$num = $this->db->count_all_results('table');
// here you only have $num, no $query
Run Code Online (Sandbox Code Playgroud)
$this->db->count_all_results是Active Record查询的一部分(准备查询,仅返回数字,而不是实际结果).
$query->num_rows()在结果集对象上执行(在从DB返回结果之后).
| 归档时间: |
|
| 查看次数: |
116757 次 |
| 最近记录: |