源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

php实现分页工具类分享

  • 时间:2021-01-03 05:29 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:php实现分页工具类分享
代码:
[u]复制代码[/u] 代码如下:
    /**     * 把中间的看成一个可以滑动的固定长度的尺子     *     * 把$this->_totalShowPages 当成一个可以滑动的固定长度尺子,     * 然后$this->_totalPages就是一个给定长度的木块,尺子在这个     * 木块上滑动。情况两种:     * 1. 尺子长度大于木块长度,那么就直接输出所有的页码;     * 2. 尺子长度小于木块长度,那么就只用找到输出这个尺子长度页     * 数的起始点——$start, $end;     * @Access protected     * @Return void     * @Exception none     */     protected function _getShowPageNumber()     {     $pageHtml = '';     //找到$start点     if($this->_curPage - 2 > 1) {     $start = $this->_curPage - 2;     } else {     $start = 1;     }     //找到$end 点     $end = $start + $this->_totalShowPages;     if($end >= $this->_totalPages) {     $end = $this->_totalPages;     $start = $end - $this->_totalShowPages; //保证页面显示的长度为$this->_totalShowPages     }     if($start != 1) {     $pageHtml .= $this->_getPageHtml(1);     $preMore = $this->_curPage - $this->_totalShowPages;     if($preMore < 1) {     $preMore = 1;     }     $pageHtml .= $this->_getMorePageHtml($preMore);     }     for($page = $start; $page < $end; $page ++) {     $pageHtml .= $this->_getPageHtml($page);     }     if($end != $this->_totalPages) {     $pageHtml .= $this->_getMorePageHtml($end);     }     $pageHtml .= $this->_getNormalPageHtml($this->_totalPages);     return $pageHtml;     }  
第一种老想法的代码实现:
[u]复制代码[/u] 代码如下:
    /**     * 一步步的来     *     * @desc     *     * @Access protected     * @Return void     * @Exception none     */     protected function _getShowPageNumberTwo()     {     if($this->_curPage < $this->_totalShowPages) {     for($page = 1; $page < $this->_totalShowPages; $page ++) {     $pageHtml .= $this->_getPageHtml($page);     }     $pageHtml .= $this->_getMorePageHtml($this->_totalShowPages);     $pageHtml .= $this->_getNormalPageHtml($this->_totalPages);     } else {     $pageHtml .= $this->_getNormalPageHtml(1);     if($this->_curPage == $this->_totalShowPages) {     $pageHtml .= $this->_getMorePageHtml(1);     } else {     $pageHtml .= $this->_getMorePageHtml($this->_curPage - $this->_totalShowPages);     }     if($this->_curPage + $this->_totalShowPages >= $this->_totalPages) {     for($page = $this->_totalPages - $this->_totalShowPages; $page < = $this->_totalPages; $page ++) {     $pageHtml .= $this->_getPageHtml($page);     }     } else {     $start = $this->_curPage - 2;     $end = $this->_curPage + $this->_totalShowPages - 2;     for($page = $start; $page < $end; $page ++) {     $pageHtml .= $this->_getPageHtml($page);     }     $pageHtml .= $this->_getMorePageHtml($this->_curPage + $this->_totalShowPages - 2);     $pageHtml .= $this->_getNormalPageHtml($this->_totalPages);     }     }     return $pageHtml;     }    
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部