CI分页类首页、尾页不显示的解决方法


Posted in PHP onMarch 28, 2016

本文实例讲述了CI分页类首页、尾页不显示的解决方法。分享给大家供大家参考,具体如下:

看了下手册说,每次都要重新去写一次呢些$config,可以新建一个文件放到config文件夹下面,考虑了下,config这个文件夹系统会自动加载,也就是说不管你访问什么页面这文件夹里面的所有信息都会被加载,所以,要想在这个文件里面去写就需要写方法,这样即使加载如果不去加载也是没有关系的。本人没有沿用手册上的说法做。

我的思路:既然我们是在CI这框架下写的东西,而且每个控制器都会引入父类CI_Controller这个类,所有我就在这个类中创建了一个方法,名page代码如下:

public function page($url,$total,$pre,$status=TRUE){
  $this->load->library('pagination');
  $config['base_url'] = $url;
  $config['total_rows'] = $total;
  $config['per_page'] = $pre;
  $config['page_query_string'] = $status;
  $config['first_link'] = 'First';//首页
  $config['first_tag_open'] = '';
  $config['first_tag_close'] = '';
  $config['last_link'] = 'Last';//尾页
  $config['last_tag_open'] = '';
  $config['last_tag_close'] = '';
  $this->pagination->initialize($config);
  $page_list = $this->pagination->create_links();
  return $page_list;
}

参数说明,$url: 当前需要使用分页的地址。  $total:总数。  $pre:每页显示的数量   $status默认是true  传page以&page=1 的方式,如果修改成false则已page/1的方式显示。

然后直接在你的控制器中如下使用即可

$page_list = $this->page("http://XXX.XXXX.com/XXX/XXX",总数,页显示数量);
//分页

这样既可。

tips:系统自带的传值形参不叫page而是pre_page好像,忘了,由于参数过长,你就在 根目录--》system-->libraries--》Pagination.php里面  找到var $query_string_segment ="形参";这里修改page即可。

测试是发现如果按照上面的写法,首页和尾页不显示的原因:你的数据量太少了,分页数据至少在4页以上才会出现 首页这个字样,但是我们可以修改,这里我设定为3页才显示,则也去这个 pagination.php文件中找到

var $num_links = 2;这里默认是2也就是第四页才显示,修改成1 ,注意,这里最小只能修改成1,如果你想在任何情况下都显示则需要修改代码,找到这段代码:

if ($this->first_link !== FALSE AND $this->cur_page > ($this->num_links + 1))

修改将and 后面的都去掉即可,因为and后面就是限定条件,说明下:$this->cur_page表示当前页,  $this->num_links就是要显示在什么时候才显示的,还有其他代码这里就不说明了,自己查找下问啥$num_links不能设置为0

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

PHP 相关文章推荐
用户的详细注册和判断
Oct 09 PHP
PHP UTF8编码内的繁简转换类
Jul 20 PHP
fleaphp常用方法分页之Pager使用方法
Apr 23 PHP
一些php项目中比较通用的php自建函数的详解
Jun 06 PHP
zend Framework中的Layout(模块化得布局)详解
Jun 28 PHP
PHP生成网站桌面快捷方式代码分享
Oct 11 PHP
PHP设计模式之适配器模式代码实例
May 11 PHP
PHP SPL标准库之文件操作(SplFileInfo和SplFileObject)实例
May 11 PHP
PHP中ltrim与rtrim去除左右空格及特殊字符实例
Jan 07 PHP
php自定义中文字符串截取函数substr_for_gb2312及substr_for_utf8示例
May 28 PHP
PHP实现的pdo连接数据库并插入数据功能简单示例
Mar 30 PHP
Laravel框架自定义分页样式操作示例
Jan 26 PHP
CodeIgniter分页类pagination使用方法示例
Mar 28 #PHP
php实现简单爬虫的开发
Mar 28 #PHP
PHP连接数据库实现注册页面的增删改查操作
Mar 27 #PHP
php编程中echo用逗号和用点号连接的区别
Mar 26 #PHP
php ci 获取表单中多个同名input元素值的代码
Mar 25 #PHP
PHP创建文件,并向文件中写入数据,覆盖,追加的实现代码
Mar 25 #PHP
php用正则判断是否为数字的方法
Mar 25 #PHP
You might like
【COS正片】蕾姆睡衣cos,纯洁可爱被治愈了 cn名濑弥七
2020/03/02 日漫
详解PHP防止盗链防止迅雷下载的方法
2017/04/26 PHP
php中get_object_vars()在数组的实例用法
2021/02/22 PHP
jquery的颜色选择插件实例代码
2008/10/02 Javascript
ASP.NET中基于JQUERY的高性能的TreeView补充
2011/02/23 Javascript
JS实现双击编辑可修改状态的方法
2015/08/14 Javascript
JS右下角广告窗口代码(可收缩、展开及关闭)
2015/09/04 Javascript
如何用jQuery实现ASP.NET GridView折叠伸展效果
2015/09/26 Javascript
jquery弹出遮掩层效果【附实例代码】
2016/04/28 Javascript
javascript实现下雪效果【实例代码】
2016/05/03 Javascript
JavaScript 基础函数_深入剖析变量和作用域
2016/05/18 Javascript
Javascript创建类和对象详解
2017/05/31 Javascript
jquery实现放大镜简洁代码(推荐)
2017/06/08 jQuery
mpvue中配置vuex并持久化到本地Storage图文教程解析
2018/03/15 Javascript
vue配置多页面的实现方法
2018/05/22 Javascript
scrapyd schedule.json setting 传入多个值问题
2019/08/07 Javascript
countUp.js实现数字滚动效果
2019/10/18 Javascript
js实现页面导航层级指示效果
2020/08/25 Javascript
linux环境下python中MySQLdb模块的安装方法
2017/06/16 Python
python数据分析数据标准化及离散化详解
2018/02/26 Python
Python实现多级目录压缩与解压文件的方法
2018/09/01 Python
Python pyinotify模块实现对文档的实时监控功能方法
2018/10/13 Python
django中forms组件的使用与注意
2019/07/08 Python
基于Tensorflow读取MNIST数据集时网络超时的解决方式
2020/06/22 Python
python的launcher用法知识点总结
2020/08/07 Python
Python面向对象实现方法总结
2020/08/12 Python
CSS3实现复选框动画特效示例代码
2016/09/27 HTML / CSS
很酷的小工具和电子产品商城:GearBest
2016/11/19 全球购物
英国性感内衣和睡衣品牌:Bluebella
2018/01/26 全球购物
日本整理专家Marie Kondo的官方在线商店:KonMari
2020/06/29 全球购物
转党组织关系介绍信
2014/01/08 职场文书
活动邀请函范文
2014/01/19 职场文书
入党自我鉴定
2014/03/25 职场文书
内勤主管岗位职责
2014/04/03 职场文书
初中英语课后反思
2014/04/25 职场文书
关于奉献的演讲稿
2014/05/21 职场文书