thinkPHP5框架分页样式类完整示例

前端之家收集整理的这篇文章主要介绍了thinkPHP5框架分页样式类完整示例前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

本文实例讲述了thinkPHP5分页样式类。分享给大家供大家参考,具体如下:

配置文件中改路径

把这段代码放入extend文件下 可以在这个文件下创建个page文件

分页的控制器方法

paginate(12,false,[ 'type'=> 'page\Page','var_page'=>'page']);
PHP;"> PHP namespace page; // +---------------------------------------------------------------------- // | ThinkPHP [ WE CAN DO IT JUST THINK ] // +---------------------------------------------------------------------- // | Copyright (c) 2006~2017 http://thinkPHP.cn All rights reserved. // +---------------------------------------------------------------------- // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 ) // +---------------------------------------------------------------------- // | Author: zhangyajun <448901948@qq.com> // +---------------------------------------------------------------------- use think\Paginator; class Page extends Paginator { //首页 protected function home() { if ($this->currentPage() > 1) { return "首页"; } else { return "

首页

"; } } //上一页 protected function prev() { if ($this->currentPage() > 1) { return "上一页"; } else { return "

上一页

"; } } //下一页 protected function next() { if ($this->hasMore) { return "下一页"; } else { return"

下一页

"; } } //尾页 protected function last() { if ($this->hasMore) { return "尾页"; } else { return "

尾页

"; } } //统计信息 protected function info(){ return "

" . $this->lastPage . "" . $this->total . "条数据

"; } /** * 页码按钮 * @return string */ protected function getLinks() { $block = [ 'first' => null,'slider' => null,'last' => null ]; $side = 3; $window = $side * 2; if ($this->lastPage < $window + 6) { $block['first'] = $this->getUrlRange(1,$this->lastPage); } elseif ($this->currentPage <= $window) { $block['first'] = $this->getUrlRange(1,$window + 2); $block['last'] = $this->getUrlRange($this->lastPage - 1,$this->lastPage); } elseif ($this->currentPage > ($this->lastPage - $window)) { $block['first'] = $this->getUrlRange(1,2); $block['last'] = $this->getUrlRange($this->lastPage - ($window + 2),$this->lastPage); } else { $block['first'] = $this->getUrlRange(1,2); $block['slider'] = $this->getUrlRange($this->currentPage - $side,$this->currentPage + $side); $block['last'] = $this->getUrlRange($this->lastPage - 1,$this->lastPage); } $html = ''; if (is_array($block['first'])) { $html .= $this->getUrlLinks($block['first']); } if (is_array($block['slider'])) { $html .= $this->getDots(); $html .= $this->getUrlLinks($block['slider']); } if (is_array($block['last'])) { $html .= $this->getDots(); $html .= $this->getUrlLinks($block['last']); } return $html; } /** * 渲染分页html * @return mixed */ public function render() { if ($this->hasPages()) { if ($this->simple) { return sprintf( '%s