php分页功能简记

来源:互联网 发布:淘宝好货源 编辑:程序博客网 时间:2024/05/16 12:45
<?phpclass Paging{    private $pageNow;    private $page_whole;    private $pageShowMore;    private $pageCount;    private $pagesShow;    /**     *      * @param 当前页 $pageNow     * @param 超链接数量 $page_whole     * @param 总共多少页 $pageCount     */    public function __construct($pageNow,$page_whole,$pageCount){        $this->pageNow=$pageNow;        $this->page_whole=$page_whole;        $this->pageShowMore=ceil($this->pageNow/$this->page_whole)*$this->page_whole;        $this->pageCount=$pageCount;    }    public function Show(){        $this->ShowStratPage();        $this->ShowLastPage();        $this->ShowFrontPages();        $this->ShowPages();        $this->ShowBackPages();        $this->ShowNextPage();        $this->ShowEndPage();        $this->ShowPageInfo();        return $this->pagesShow;    }        private function ShowFrontPages(){        if($this->pageNow>$this->page_whole){            $Mpage=$this->pageShowMore+1-$this->page_whole*2;            $this->pagesShow['frontPages']="  <a href='?page={$Mpage}'><<</a>  ";        }    }        private function ShowBackPages(){        $test=floor($this->pageCount/$this->page_whole)*$this->page_whole;        if($this->pageNow<=$test){            $Mpage=$this->pageShowMore+1;            $this->pagesShow['backPages']="  <a href='?page={$Mpage}'>>></a>  ";        }    }        private function ShowStratPage(){        $this->pagesShow['start']="<a href='?page=1'>首页</a>  ";    }        private function ShowEndPage(){        $this->pagesShow['end']="<a href='?page=".$this->pageCount."'>尾页</a>  ";    }        private function ShowLastPage(){        if($this->pageNow>1){            $t=$this->pageNow-1;            $this->pagesShow['lastPage']="<a href='?page=".$t."'>上一页</a>  ";        }    }        private function ShowNextPage(){        if($this->pageNow<$this->pageCount){            $t=$this->pageNow+1;            $this->pagesShow['nextPage']="<a href='?page=".$t."'>下一页</a>  ";        }    }        private function ShowPages(){        $str="";        for ($i=$this->pageShowMore-$this->page_whole+1;$i<=$this->pageShowMore;$i++){            $str.= " <a href='?page={$i}'>{$i}</a> ";            if($i==$this->pageCount){                break;            }        }        $this->pagesShow['showPages']=$str;    }        private function ShowPageInfo(){        $this->pagesShow['Info']="当前第<span style='color:red'>{$this->pageNow}</span>页/共有{$this->pageCount}页";    }}?>

1 0