《PHP教程:PHP實現可自定義樣式的分頁類》要點:
本文介紹了PHP教程:PHP實現可自定義樣式的分頁類,希望對您有用。如果有疑問,可以聯系我們。
PHP實戰本文實例為大家分享了PHP實現可自定義樣式的分頁類,供大家參考,具體內容如下
PHP實戰
<?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 <a>標簽 總體樣式
* @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 = '<li>';
$Ehtml = '</li>';
} else {
$Shtml = '<p>';
$Ehtml = '</p>';
}
}
if (true == $ShowToPage) {
$PageHtml .= "$Shtml<a href='{$this->PageUrl}p=1'>? 首頁</a>$Ehtml";
$PrveUrl = $this->getPrve($Page);
$PageHtml .= "$Shtml<a href='{$PrveUrl}'>? 上一頁</a>$Ehtml";
}
for($i = $StartPage; $i <= $EndPage; $i ++) {
if ($Page == $i) {
$PageHtml .= "$Shtml<a href='{$this->PageUrl}p={$i}' class='{$this->CurClass}'>{$i}</a>$Ehtml";
} else {
$PageHtml .= "$Shtml<a href='{$this->PageUrl}p={$i}' class='{$this->PageClass}'>{$i}</a>$Ehtml";
}
}
if (true == $ShowToPage) {
$NextUrl = $this->getNext($Page);
$PageHtml .= "$Shtml<a href='{$NextUrl}'>下一頁 ?</a>$Ehtml";
$PageHtml .= "$Shtml<a href='{$this->PageUrl}p={$this->CountPage}' >尾頁 ?</a>$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;
}
}
PHP實戰再為大家分享一個主要用于新手學習php分頁,代碼簡單實用,主要是注釋很完整.
PHP實戰1. Page.class.php
《PHP教程:PHP實現可自定義樣式的分頁類》是否對您有啟發,歡迎查看更多與《PHP教程:PHP實現可自定義樣式的分頁類》相關教程,學精學透。維易PHP學院為您提供精彩教程。
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/7204.html