thinkPHP5框架分页样式类完整示例
本文实例讲述了thinkPHP5分页样式类。分享给大家供大家参考,具体如下:
在配置文件中改路径
把这段代码放入extend文件下可以在这个文件下创建个page文件
在分页的控制器方法中
->paginate(12,false,['type'=>'page\Page','var_page'=>'page']);
//+---------------------------------------------------------------------- usethink\Paginator; classPageextendsPaginator { //首页 protectedfunctionhome(){ if($this->currentPage()>1){ return"url(1)."'title='首页'>首页"; }else{ return" 首页
"; } } //上一页 protectedfunctionprev(){ if($this->currentPage()>1){ return"url($this->currentPage-1)."'title='上一页'>上一页"; }else{ return" 上一页
"; } } //下一页 protectedfunctionnext(){ if($this->hasMore){ return"url($this->currentPage+1)."'title='下一页'>下一页"; }else{ return" 下一页
"; } } //尾页 protectedfunctionlast(){ if($this->hasMore){ return"url($this->lastPage)."'title='尾页'>尾页"; }else{ return" 尾页
"; } } //统计信息 protectedfunctioninfo(){ return"共".$this->lastPage. "页".$this->total."条数据"; } /** *页码按钮 *@returnstring */ protectedfunctiongetLinks() { $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 *@returnmixed */ publicfunctionrender() { if($this->hasPages()){ if($this->simple){ returnsprintf( '%s %s%s%s
更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《ZendFrameWork框架入门教程》及《PHP模板技术总结》。
希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。