Heim  >  Artikel  >  Backend-Entwicklung  >  Thinkphp和Bootstrap结合打造个性的分页样式(推荐)_php实例

Thinkphp和Bootstrap结合打造个性的分页样式(推荐)_php实例

WBOY
WBOYOriginal
2016-08-17 13:02:36870Durchsuche

先吐槽一下ThinkPHP3.1版的分页样式,虽然看起来也很简单大方,但是所有的页码全是使用简单的数字,之间的空隙比较小,不大容易点,还有那个“前5页”和“后5页”显得有点多余,因为点击当前显示第一页的“上一页”按钮会自然出来前5页。

3.1的分页效果是这个样子滴:

针对以上种种不太理想的情况,又加上最近学习了ThinkPHP5,在ThinkPHP5中提供了对BootStrap分页样式的完美支持,在thinkphp5中只要引入了BootStrap.css文件,在使用Controller中使用分页函数后,前台自然就会按照BootStrap的样式来显示,效果是这个样子滴:

而我开发顶求网的时候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);

这样就可以使用我们上面的设置了,好了,搞定,新的分页显示效果如下:

以上所述是小编给大家介绍的Thinkphp和Bootstrap结合打造个性的分页样式(推荐),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn