打造简单实用的Thinkphp分页样式(Bootstrap版本)

先行吐槽一下ThinkPHP3.1版的分页样式,虽然看起吧殊粗略大方,但是所有的页码全是使用简易的数字,之间的空隙比较粗,不要命容易触及,还有老“前5页”和“后5页”显得有点多余,因为点击即形第一页的“上同页”按钮会自然出来前5页。3.1之分页效果是是样子滴:

图片 1

本着上述种种不太理想的场面,又加上多年来读书了ThinkPHP5,在ThinkPHP5中提供了针对性BootStrap分页样式的面面俱到支持,在thinkphp5中只要引入了BootStrap.css文件,在利用Controller中行使分页函数后,前台当就是见面照BootStrap的体裁来显示,效果是这个法滴:

图片 2

假设自开顶求网的时候ThinkPHP5还没出,使用的是3.1本子,那么在3.1本中什么才能够使BootStrap的分页组件为?以下是解决办法:

  1. 派生thinkphp的原生page.class.php类

    以不影响基本文件(违反设计模式种的对准修改封闭原则),我派生了一个子类ListPage,该子类代码如下:

 import('ORG.Util.Page');// 导入分页类
 class ListPage extends  Page
 {//针对本系统User控制器特点重写Page类中相关函数
  
 /**
     * 分页显示输出
     * @access public
     */
   protected $config  = array('header'=>'条记录','prev'=>'<','next'=>'>',
   'first'=>'<<','last'=>'>>',
   'theme'=>'%first%  %upPage%  %linkPage% %downPage%  %end%');
   ……

得视,首先导入核心类所处的文件,然后便好大胆之派生了,而这里只排有了主导代码。我们只有待改page类中的Config变量就足以了,在子类中重新写该变量为面的款式,然后再次备Action(Controller)中采取该子类来树分页对象就:

$Page=new ListPage($count,5);

然就足以应用我们地方的设置了,好了,搞定,新的分页显示效果如下:

图片 3

图片 4

本文首发于顶求网,转载请注明来源

相关文章