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


Posted in PHP onDecember 05, 2014

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

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

/**

* 获取分页数据及总条数

* @param string @tablename 表名

* @param mixed $where 条件

* @param int $limit 每页条数

* @param int $offset 当前页

* 

*/

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);

}

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

PHP 相关文章推荐
dede3.1分页文字采集过滤规则详说(图文教程)续四
Apr 03 PHP
Pain 全世界最小最简单的PHP模板引擎 (普通版)
Oct 23 PHP
PHP写UltraEdit插件脚本实现方法
Dec 26 PHP
PHP中::、->、self、$this几种操作符的区别介绍
Apr 24 PHP
PHP数据类型之布尔型的介绍
Apr 28 PHP
如何取得中文字符串中出现次数最多的子串
Aug 08 PHP
header导出Excel应用示例
Jan 24 PHP
php字符比较函数similar_text、strnatcmp与strcasecmp用法分析
Nov 18 PHP
php实现json编码的方法
Jul 30 PHP
Yii全局函数用法示例
Jan 22 PHP
PHP中localeconv()函数的用法
Mar 26 PHP
PHP实现15位身份证号转18位的方法分析
Oct 16 PHP
常见php数据文件缓存类汇总
Dec 05 #PHP
Thinkphp搜索时首页分页和搜索页保持条件分页的方法
Dec 05 #PHP
ThinkPHP模版引擎之变量输出详解
Dec 05 #PHP
ThinkPHP添加更新标签的方法
Dec 05 #PHP
彻底删除thinkphp3.1案例blog标签的方法
Dec 05 #PHP
php树型类实例
Dec 05 #PHP
Yii框架form表单用法实例
Dec 04 #PHP
You might like
删除无限分类并同时删除它下面的所有子分类的方法
2010/08/08 PHP
PHP生成验证码时“图像因其本身有错无法显示”的解决方法
2013/08/07 PHP
jquery 应用代码 方便的排序功能
2010/02/06 Javascript
js的.innerHTML = ""IE9下显示有错误的解决方法
2013/09/16 Javascript
javascript随机将第一个dom中的图片添加到第二个div中示例
2013/10/08 Javascript
DOM操作一些常用的属性汇总
2015/03/13 Javascript
jQuery拖动元素并对元素进行重新排序
2015/12/30 Javascript
jQuery 中ajax异步调用的四种方式
2016/06/28 Javascript
js常用的继承--组合式继承
2017/03/06 Javascript
ES6新特性七:数组的扩充详解
2017/04/21 Javascript
Vue的土著指令和自定义指令实例详解
2018/02/04 Javascript
vue绑定的点击事件阻止冒泡的实例
2018/02/08 Javascript
jQuery实现鼠标移到某个对象时弹出显示层功能
2018/08/23 jQuery
vue 自定义指令自动获取文本框焦点的方法
2018/08/25 Javascript
微信小程序云开发之数据库操作
2019/05/18 Javascript
vue实现的封装全局filter并统一管理操作示例
2020/02/02 Javascript
jquery制作的移动端购物车效果完整示例
2020/02/24 jQuery
Javascript实现关闭广告效果
2021/01/29 Javascript
[18:32]DOTA2 HEROS教学视频教你分分钟做大人-谜团
2014/06/12 DOTA
Python3.2模拟实现webqq登录
2016/02/15 Python
Python脚本获取操作系统版本信息
2016/12/17 Python
Django验证码的生成与使用示例
2017/05/20 Python
Python简单生成随机姓名的方法示例
2017/12/27 Python
解决python中os.listdir()函数读取文件夹下文件的乱序和排序问题
2018/10/17 Python
python批量下载抖音视频
2019/06/17 Python
pycharm Tab键设置成4个空格的操作
2021/02/26 Python
JPA面试常见问题
2016/11/14 面试题
学期自我鉴定范文
2013/10/01 职场文书
促销活动方案模板
2014/02/24 职场文书
房屋公证委托书
2014/04/03 职场文书
财产公证书
2014/04/10 职场文书
和谐家庭事迹材料
2014/12/20 职场文书
小班下学期幼儿评语
2014/12/30 职场文书
2015国庆节66周年演讲稿
2015/03/20 职场文书
Nginx如何配置Http、Https、WS、WSS的方法步骤
2021/05/11 Servers
nginx容器方式反向代理实战
2022/04/18 Servers