//
分頁處理類:
功能:實現分頁技術。
本文實例講述了PHP實現的簡單分頁類及其詳細的使用方法。分享給大家供大家參考,具體如下
<?php
/**
* 分頁類
*/
class page{
protected $url;//傳入的URL
protected $count;//總頁數
public $num;//每頁顯示的數量
protected $total;//總記錄數,總條數
protected $prevnum;//上一頁數
protected $nextnum;//下一頁數
protected $prev='上一頁';//上一頁
protected $next='下一頁';//下一頁
protected $first='首頁';//首頁
protected $last='尾頁';//尾頁
protected $start;//開始記錄數
protected $end;//結束記錄數
protected $page;//當前頁
//初始化成員方法 URL 總數 每頁顯示數
public function __construct($url,$total,$num=10){
$this->url=$url;//填入的url地址
$this->total=$total;//條目總數
$this->num=$num;//每頁顯示數
$this->page=$_GET['page']?$_GET['page']:1;//獲得當前的頁數
$this->count=$this->getcount();//總頁數
$this->prevnum=$this->getprevnum();//獲得上一頁數
$this->nextnum=$this->getnextnum();//獲得下一頁數
$this->start=$this->getstart();//開始記錄數
$this->end=$this->getend();//結束記錄數
var_dump($this->page);
}
//獲得總數的方法
protected function getcount(){
return ceil($this->total/$this->num);
}
//獲得開始記錄數
protected function getstart(){
return ($this->page-1)*$this->num+1;
}
//獲得結束記錄數
protected function getend(){
return min($this->page*$this->num,$this->total);
}
//獲得上一頁的方法
protected function getprevnum(){
if($this->page<=1){
return false;
}else{
return $this->page-1;
}
}
//獲得下一頁的方法
protected function getnextnum(){
if($this->page>=$this->count){
return false;
}else{
return $this->page+1;
}
}
//獲得分頁的偏移量
public function offset(){
return ($this->page-1)*$this->num;
}
//公共方法
public function showpage(){
//顯示效果為:這是第n頁 共n頁 從n到x記錄 首頁 上一頁 下一頁 尾頁
$string='這是第'.$this->page.'頁 共'.$this->count.'頁 ';
$string.='從第'.$this->start.'條到第'.$this->end.'條記錄';
$string.='<a href="'.$this->url.'page=1">首頁</a> ';
if($this->prevnum){
$string.='<a href="'.$this->url.'page='.$this->prevnum.'">上一頁</a>   ';
}
if($this->nextnum){
$string.='<a href="'.$this->url.'page='.$this->nextnum.'">下一頁</a>   ';
}
$string.='<a href="'.$this->url.'page='.$this->count.'">尾頁</a>';
return $string;
}
}
?>
云南然成科技有限公司是一家云南本土的獲得省科技廳、省財政廳、省國稅局、地稅局等機構認定的高新技術企業。公司定位于高端網站設計、系統開發、APP開發、微信公眾號、微信小程序開發。擁有多個軟著權,公司先后為多家事業單位提供服務,比如會澤文化館、宣威文化館、中科院昆明植物研究所等。其中中國科學院昆明植物研究所已經進行了長達4年的合作,并且還持續合作中!