当前位置:首页 > CMS教程 > 其它CMS > 列表

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

发布:smiling 来源: PHP粉丝网  添加日期:2021-05-02 21:25:45 浏览: 评论:0 

这篇文章主要介绍了Codeigniter框架实现获取分页数据和总条数的方法,实现了对获取当前页的数据和总条数方法的封装,是非常实用的技巧,需要的朋友可以参考下

本文实例讲述了Codeigniter框架实现获取分页数据和总条数的方法。分享给大家供大家参考。具体实现方法如下:

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

  1. /** 
  2. * 获取分页数据及总条数 
  3. * @param string @tablename 表名 
  4. * @param mixed $where 条件 
  5. * @param int $limit 每页条数 
  6. * @param int $offset 当前页 
  7. * 
  8. */ 
  9. public function get_page_data($tablename, $where, $limit, $offset, $order_by, $db) 
  10. { 
  11.         if(emptyempty($tablename)) 
  12.         { 
  13.             return FALSE; 
  14.         } 
  15.         
  16.         $dbhandle = emptyempty($db) ? $this->db : $db; 
  17.         
  18.         if($where) 
  19.         { 
  20.             if(is_array($where)) 
  21.             { 
  22.                 $dbhandle->where($where); 
  23.             } 
  24.             else 
  25.             { 
  26.                 $dbhandle->where($where, NULL, false); 
  27.             } 
  28.         } 
  29.         
  30.         $db = clone($dbhandle); 
  31.         $total = $dbhandle->count_all_results($tablename); 
  32.         
  33.         if($limit) 
  34.         { 
  35.             $db->limit($limit); 
  36.         } 
  37.         
  38.         if($offset) 
  39.         { 
  40.             $db->offset($offset); 
  41.         } 
  42.         
  43.         if($order_by) 
  44.         { 
  45.             $db->order_by($order_by); 
  46.         } //www.phpfensi.com 
  47.         
  48.         $data = $db->get($tablename)->result_array(); 
  49.         
  50.         return array('total' => $total, 'data' => $data); 
  51. } 

希望本文所述对大家基于Codeigniter框架的PHP程序设计有所帮助。

Tags: Codeigniter 分页 总条数

分享到: