首页 > php框架 > Codeigniter框架实现获取分页数据和总条数

Codeigniter框架实现获取分页数据和总条数

一般在数据分页的时候需要获取当前页的数据和总条数,一般人是在model中封装两个函数分别获取当前页的数据和数据总条数,业务逻辑类似,感觉有点冗余,可以封装在一起

<?php
/**
 * 获取分页数据及总条数
 * @param string @tablename 表名
 * @param mixed $where 条件
 * @param int $limit 每页条数
 * @param int $offset 当前页
 *
 * @link http://www.phprm.com
 代码如下复制代码
 */
public function get_page_data($tablename, $where, $limit, $offset, $order_by, $db) {
    if (empty($tablename)) {
        return FALSE;
    }
    $dbhandle = empty($db) ? $this->db : $db;
    if ($where) {
        if (is_array($where)) {
            $dbhandle->where($where);
        } else {
            $dbhandle->where($where, NULL, false);
        }
    }
    $db = clone ($dbhandle);
    $total = $dbhandle->count_all_results($tablename);
    if ($limit) {
        $db->limit($limit);
    }
    if ($offset) {
        $db->offset($offset);
    }
    if ($order_by) {
        $db->order_by($order_by);
    }
    $data = $db->get($tablename)->result_array();
    return array(
        'total' => $total,
        'data' => $data
    );
}


本文地址:http://www.phprm.com/frame/59746.html

转载随意,但请附上文章地址:-)

标签:分页

相关文章

发表留言