Home >Backend Development >PHP Tutorial >PHP paging tool class sharing_PHP tutorial

PHP paging tool class sharing_PHP tutorial

WBOY
WBOYOriginal
2016-07-13 10:41:51829browse

Code:

Copy code The code is as follows:

/**
* Treat the middle one as a sliding, fixed-length ruler
*
* Treat $this->_totalShowPages as a sliding, fixed-length ruler,
* Then $this-> ;_totalPages is a wooden block of a given length, and the ruler slides on this
* wooden block. There are two situations:
* 1. If the length of the ruler is greater than the length of the wooden block, then all page numbers will be output directly;
* 2. The length of the ruler is less than the length of the wooden block, then only the page with the length of the ruler will be found and output
* The starting point of the number——$start, $end;
* @Access protected
* @Return void
* @Exception none
*/
protected function _getShowPageNumber()
{
$pageHtml = '';
//Find the $start point
if($this->_curPage - 2 > 1) {
$start = $ this->_curPage - 2;
} else {
$start = 1;
}
//Find $end point
$end = $start + $this->_totalShowPages ;
if($end >= $this->_totalPages) {
$end = $this->_totalPages;
$start = $end - $this->_totalShowPages; // Ensure that the length of the page displayed is $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;
}

Code implementation of the first old idea:

Copy code The code is as follows:

    /**
* Step by step
*
* @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;
    }
   

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/676867.htmlTechArticle代码: 复制代码 代码如下: /** * 把中间的看成一个可以滑动的固定长度的尺子 * * 把$this-_totalShowPages 当成一个可以滑动的固定长度尺子,...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn