PHP分页类,支持自定义样式,中间5页
May 22, 2016 pm 06:24 PM
<?php //namespace Component; /** * 2016-3-27 * @author ankang */ class Page { private $ShowPage; private $CountPage; private $Floorp; private $PageUrl; private $PageClass; private $CurClass; /** * @author ankang * @param number $CountNum 数据总数 * @param string $PageUrl 跳转链接 * @param string $PageClass 标签 总体样式 * @param string $PageUrl 当前页样式 * @param number $PageSize 每页显示的数据条数 * @param number $ShowPage 每次显示的页数 */ public function __construct($CountNum, $PageUrl = NULL, $PageClass = NULL,$CurClass = NULL, $PageSize = 20, $ShowPage = 5) { $this->ShowPage = $ShowPage; $this->CountPage = ceil ( $CountNum / $PageSize ); $this->Floorp = floor ( $ShowPage / 2 ); // 偏移量 $this->PageClass = is_null ( $PageClass ) ? '' : $PageClass; $this->CurClass = is_null ( $CurClass ) ? '' : $CurClass; // $ServerURL = ( preg_match('/\?/i', $_SERVER['REQUEST_URI']))?preg_replace('/\&p\=[0-9]+/i', "", $_SERVER['REQUEST_URI']) : $_SERVER['REQUEST_URI']."?"; // if( substr($ButURL,0,2)=='//' ){ // $ServerURL = substr($ServerURL,1); // } // $url = preg_replace('/p=[\d]*/i', '', $ServerURL); $url = ''; //推荐自己传url,不传也可以打开上面的代码自动获取 $this->PageUrl = is_null ( $PageUrl ) ? $url : $PageUrl; } /** * * @param number $Page * @param string $ShowToPage * 首页,上下页,尾页 * @param string $Html 标签元素,li,p * @return string */ public function getPage($Page = 1, $ShowToPage = true, $Html = null) { $StartPage = ($Page - $this->Floorp); // 开始页码 $EndPage = ($Page + $this->Floorp); // 结束页码 if ($this->CountPage < $this->ShowPage) { $StartPage = 1; $EndPage = $this->CountPage; } if ($StartPage < 1) { $StartPage = 1; $EndPage = $this->ShowPage; } if ($EndPage > $this->CountPage) { $StartPage = $this->CountPage - $this->ShowPage + 1; $EndPage = $this->CountPage; } $PageHtml = ''; if (! is_null ( $Html )) { if ($Html == 'li') { $Shtml = ''; $Ehtml = ''; } else { $Shtml = ''; $Ehtml = ''; } } if (true == $ShowToPage) { $PageHtml .= "$ShtmlPageUrl}p=1.html" _href="{$this->PageUrl}p=1.html">&laquo; 首页$Ehtml"; $PrveUrl = $this->getPrve($Page); $PageHtml .= "$Shtml&laquo; 上一页$Ehtml"; } for($i = $StartPage; $i getNext($Page); $PageHtml .= "$Shtml下一页 &raquo;$Ehtml"; $PageHtml .= "$ShtmlPageUrl}p={$this->CountPage}.html" _href="{$this->PageUrl}p={$this->CountPage}.html">尾页 &raquo;$Ehtml"; } return $PageHtml; } public function getPrve($Page){ if ($Page != 1) { $Prve = $Page - 1; $PrveUrl = "{$this->PageUrl}p={$Prve}"; } else { $PrveUrl = "{$this->PageUrl}p=1"; } return $PrveUrl; } public function getNext($Page){ if ($Page != $this->CountPage) { $Next = $Page + 1; $NextUrl = "{$this->PageUrl}p={$Next}"; } else { $NextUrl = "{$this->PageUrl}p={$this->CountPage}"; } return $NextUrl; } }
로그인 후 복사
2. [图片] page.png
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

인기 기사
Repo : 팀원을 부활시키는 방법
3 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌
스플릿 소설을이기는 데 얼마나 걸립니까?
3 몇 주 전
By DDD
R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
1 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌
헬로 키티 아일랜드 어드벤처 : 거대한 씨앗을 얻는 방법
3 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌

인기 기사
Repo : 팀원을 부활시키는 방법
3 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌
스플릿 소설을이기는 데 얼마나 걸립니까?
3 몇 주 전
By DDD
R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
1 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌
헬로 키티 아일랜드 어드벤처 : 거대한 씨앗을 얻는 방법
3 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 기사 태그

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제
Gmail 이메일의 로그인 입구는 어디에 있나요?
7288
9


자바 튜토리얼
1622
14


Cakephp 튜토리얼
1342
46


라라벨 튜토리얼
1259
25


PHP 튜토리얼
1206
29

