天天看點

php精仿百度貼吧,寫了一個仿百度貼吧分頁效果的分頁類,有人要麼?

該樓層疑似違規已被系統折疊 隐藏此樓檢視此樓

//Page.class.php類檔案

//分頁類

class Page {

private $_total; //總記錄數

private $_pagesize; //每頁顯示記錄數

private $_pagenum; //從哪一頁開始顯示

private $_url; //目前頁面位址

private $_both_num; //兩邊顯示的條數

private $_limit; //limit

private $_page; //目前頁碼

private $_get; //接收get傳過來的值

private $_pageshow; //對外顯示的分頁效果

private $_pagesum; //總頁數

private $_index; //是否顯示首頁和尾頁

public function __set($key,$value){

$this->$key=$value;

}

public function __get($key){

return $this->$key;

}

//構造函數初始化

public function __construct($total,$get,$pagesize=10,$both_num=2,$index=1){

$this->getTotal($total);

$this->_get=$get;

$this->_pagesize=$pagesize;

$this->_pagesum=ceil($this->_total/$this->_pagesize);

$this->_page=$this->getPage();

$this->_pagenum=($this->_page-1)*$this->_pagesize;

$this->_limit="limit ".$this->_pagenum.",".$this->_pagesize;

$this->_url=$this->getUrl();

$this->_both_num=$this->getBothNum($both_num);

$this->_index=$index;

}

//擷取總記錄數

private function getTotal($total){

if($total<=0){

$this->_total=1;

}else{

$this->_total=$total;

}

}

//擷取目前頁碼

private function getPage(){

if(!empty($this->_get)&&is_numeric($this->_get)){

if($this->_get>0){

$this->_get=ceil($this->_get);

if($this->_get>$this->_pagesum){

return $this->_pagesum;

}else{

return $this->_get;

}

}else{

return 1;

}

}else{

return 1;

}

}

//擷取目前頁面除去page之後的位址

private function getUrl(){

$url=$_SERVER['REQUEST_URI'];

$url=parse_url($url);

if(!empty($url['query'])){

$url_arr=explode('&',$url['query']);

if(count($url_arr)>1){

array_pop($url_arr);