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