本文實(shí)例講述了PHP封裝的完整分頁(yè)類。分享給大家供大家參考,具體如下:
<?php class pageclass{ private $total; //總記錄 private $pagesize; //每頁(yè)顯示多少條 private $limit; //limit private $page; //當(dāng)前頁(yè) private $pagenum; //總頁(yè)碼 private $url; //地址 public function __construct($_total,$_pagesize,$page){ $this->total = $_total ? $_total :1 ; //總條數(shù) $this->pagesize = $_pagesize; //每頁(yè)顯示多少條 $this->page = $page; //當(dāng)前頁(yè)碼 $this->pagenum = ceil($this->total / $this->pagesize); //總頁(yè)碼 $this->limit = "limit ".($this->page-1)*$this->pagesize.",".$this->pagesize; //分頁(yè)語句 $this->url = $this->setUrl(); //地址 } //分頁(yè)語句 public function limit(){ return $this->limit; } //當(dāng)前的url地址 public function setUrl(){ $server = $_SERVER['REQUEST_URI']; $im = explode('/',$server); if(empty($_SERVER['PATH_INFO'])){ $array = array_splice($im,2,0,array('2'=>'index.php')); } $controller = $im[3]; $action = $im[4]; if(empty($_SERVER['PATH_INFO'])){ $servers = "http://".$_SERVER['HTTP_HOST']."/".$im[1]."/".$controller."/".$action."/"; }else{ $servers = "http://".$_SERVER['HTTP_HOST'].$_SERVER['SCRIPT_NAME']."/".$controller."/".$action."/"; } return $servers; //return $im; } //首頁(yè) public function first(){ //return $this->page; if($this->page > 1){ return "<a href='".$this->url."page/1'>首頁(yè)</a>"; } } //上一頁(yè) public function prev(){ if($this->page==1){ $page = 1; }else{ $page = $this->page-1; } if($this->page > 1){ return "<a href='".$this->url."page/".$page."'>上一頁(yè)</a>"; }else{ return "<span class='disabled'>上一頁(yè)</span>"; } } //下一頁(yè) public function next(){ $page = $this->page+1; if($this->page < $this->pagenum){ if(empty($this->page)){ $pages = $this->page+2; return "<a href='".$this->url."page/".$pages."'>下一頁(yè)</a>"; }else{ return "<a href='".$this->url."page/".$page."'>下一頁(yè)</a>"; } }else{ return "<span class='disabled'>下一頁(yè)</span>"; } } //尾頁(yè) public function last(){ if($this->page < $this->pagenum){ return "<a href='".$this->url."page/".$this->pagenum."'>尾頁(yè)</a>"; } } //分頁(yè) public function showpage(){ $page_ = ""; $page_ .= $this->first(); $page_ .= " ".$this->prev(); $page_ .= " ".$this->next(); $page_ .= " ".$this->last(); return $page_; } }
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。