CI框架分页查询时同时查询数据和总数的方法
本帖最后由 lxylxy888666 于 2012-12-18 14:26 编辑要写个demo,想同时查询数据和分页数
用了下clone
/**
* 查询数据
* @param string $md5
* @param int $offset 起始位
* @param int $limit
*
* @return array
*/
function get_limit($md5, $offset, $limit=5)
{
//起始位置处理
$offset = (($offset>0 ? $offset : 1) - 1) * $limit;
//条件初始化
$where = array('state'=>0);
//条件
if( $md5 ) {
$where['md5'] = $md5;
}
$this->db->where( $where );
//在order、group或limit前查询总数
$db = clone($this->db);
$total = $this->db->count_all_results('class');
echo $this->db->last_query();
echo '<hr/>';
$this->db = $db;
$this->db->order_by('id desc');
$this->db->limit($limit, $offset);
$query = $this->db->get('class');
$data = $query->result_array();
//sql调试方法
echo $this->db->last_query();
//return 数据和总数
return array('data'=>$data, 'total'=>$total);
}
show:
SELECT COUNT(*) AS numrows FROM classWHERE state =0AND md5 ='111'
SELECT * FROM class WHERE state =0 AND md5 ='111'ORDER BY id desc LIMIT 5
看下是你想要的么。
好东西,支持一下 嗯,帮大忙啦,3Q 你这个东西太简单了,我建议你们再次封装一下,更好用~~ 是最好的方案吗,有没有其他同学分享一下更好的方案 longjianghu 发表于 2015-9-7 14:42
你这个东西太简单了,我建议你们再次封装一下,更好用~~
有好的案例分享一下吗
这个应该是比较好的方案了:P 好奇的是如果是多表关联查询的话应该怎么处理?
页:
[1]