php下的一个分页类
admin
2023-06-27 15:03:19
0

这个分页类,参考了慕课网和燕十八的分页类。

慕课网分页类学习网址:http://www.imooc.com/learn/419


效果图:

php下的一个分页类


class page{
    public $cpage;            //传入的页码
    public $totalnum;        //总的记录数,数据
    public $total_page;        //总页数
    public $per_page = 10;    //每页的记录数
    public $showpage = 5;    //页码条显示的页码个数
    public $pageoffset;        //页码条偏移的页码个数
    public $pageup;            //上一页
    public $pagedown;        //下一页
    public $start=1;        //开始页码
    public $end;            //结束页码

    public $fycod = array();

    //初始化各个参数
    public function __construct($cpage,$totalnum){

        $this->cpage = $cpage;
        $this->totalnum = $totalnum;
        $this->pageoffset = ($this->showpage-1)/2;
        $this->total_page = $this->totalnum/10;
        $this->end = $this->total_page;

        //总页数
        $this->total_page = ceil($this->totalnum/$this->per_page);
    }

    //返回总的页数
    public function gettotal_page(){
        return $this->total_page;
    }

    //返回每页的记录数
    public function getper_page(){
        return $this->per_page;
    }

    //返回当前页
    public function getcpage()
    {
        return $this->cpage;
    }

    //修改当前页
    public function modcpage($cpage){
        $this->cpage = $cpage;
    }

    //返回上一页
    public function getpageup(){
        if($this->cpage<=1){
            return $this->pageup = 1;
        }
        return $this->pageup = $this->cpage -1;
    }

    //返回下一页
    public function getpagedown(){
        if($this->cpage < $this->total_page){
            return $this->pagedown = $this->cpage+1;
        }
    }


    //返回一个数组,关于页码的各个参数
    public function getpages(){
        $pages = array();

        $pages['total_page'] = $this->total_page;
        $pages['per_page'] = $this->per_page;
        $pages['cpage']    = $this->cpage;
        $pages['pageup'] = $this->getpageup();
        $pages['pagedown'] = $this->getpagedown();
        $pages['start'] = $this->start;
        $pages['end'] = $this->end;
        $pages['pageoffset']  = $this->pageoffset;
        $pages['showpage'] = $this->showpage;

        return $pages;
    }

    //分页代码函数,返回一个数组,作用:分页的页码数
    public function getfycod(){
        
        if($this->cpage > $this->pageoffset){
            $this->start = $this->cpage - $this->pageoffset;
            $this->end = $this->total_page > $this->cpage + $this->pageoffset ? $this->cpage + $this->pageoffset : $this->total_page;
        }else{
            $this->start = 1;
            $this->end = $this->total_page > $this->showpage ? $this->showpage : $this->total_page;
        }

        if($this->cpage + $this->pageoffset > $this->total_page){
            $this->start = $this->start - ($this->cpage + $this->pageoffset - $this->end);
        }

        for($i=$this->start;$i<=$this->end;$i++){
            $this->fycod[] = $i;
        }

        return $this->fycod;
    }
}





附件:http://down.51cto.com/data/2365841

相关内容

热门资讯

“敏昂莱更依赖中国,但首访选了... 【文/观察者网 陈思佳】缅甸外交部近日宣布,缅甸总统敏昂莱将于5月30日至6月3日访问印度,这是他就...
沈伯洋为选举拥抱贪污犯陈水扁,... 海峡导报综合报道 陈水扁日前力挺民进党台北市长参选人沈伯洋,希望沈能成为继自己之后,第2位民进党籍台...
原创 神... 大家好,我是小川[太阳] 5月29日晚,神舟二十二号飞船稳稳降落东风着陆场,圆满完成超长在轨任务,三...
85岁院士李立浧发出豪言:“我... 庆祝2026年“全国科技工作者日”,广州举办主场活动暨“科学家故事会” 羊城晚报全媒体记者 李钢 “...
钱学森之子辟谣 近年来,与钱学森先生相关的一句话广为流传,成为了“热梗”。这句话就是“人再笨还学不会微积分吗”,但其...
越来越多城市推行有奖发票 作者 | 第一财经 陈益刊今年中央财政投入100亿元在50个试点城市开展有奖发票试点,而未纳入试点范...
创明申请甲醇增程器功率控制方法... 国家知识产权局信息显示,绵阳创明智能电池有限责任公司、深圳市创明新能源股份有限公司申请一项名为“甲醇...
原创 红... 这一到618活动红米手机就杀疯了,本身高配低价的手机再降价,一下子吸引了很多用户入手,在京东平台内,...
一所突然“消失”的学校,一个心... 2120万元的赔偿请求,最终仅判赔2.53万元。2026年2月10日,一审判决送达后,武敏只用3天就...
新华社:人工智能和能源加速“双... 新华社发文表示,中国石油“昆仑”大模型深度解析复杂地质构造和油气藏特征,助力油气勘探开发提质增效;南...