首页 > php教程 > php手册 > 正文

php分页代码实例

php中文网
发布: 2016-06-21 08:53:33
原创
959人浏览过

<ol class="dp-xml"><li class="alt"><span><span>function pagestring($count, $pagesize, $</span><span class="attribute">wap</span><span>=</span><span class="attribute-value">false</span><span>) {  </span></span></li><li><span>    $</span><span class="attribute">p</span><span> = </span><span class="attribute-value">new</span><span> Pager($count, $pagesize, 'page');  </span></li><li class="alt"><span>    if ($wap) {  </span></li><li><span>        return array($pagesize, $p-</span><span class="tag">></span><span>offset, $p-</span><span class="tag">></span><span>genWap());  </span></li><li class="alt"><span>    }  </span></li><li><span>    return array($pagesize, $p-</span><span class="tag">></span><span>offset, $p-</span><span class="tag">></span><span>genBasic());  </span></li><li class="alt"><span>}  </span></li><li><span> </span></li><li class="alt"><span> </span></li><li><span>pagestring文件  </span></li><li class="alt"><span> </span></li><li><span class="tag"><?</span><span class="tag-name">php</span><span> </span></li><li class="alt"><span> </span></li><li><span>class Pager{  </span></li><li class="alt"><span> </span></li><li><span>    public $</span><span class="attribute">rowCount</span><span> = </span><span class="attribute-value">0</span><span>;  </span></li><li class="alt"><span>    public $</span><span class="attribute">pageNo</span><span> = </span><span class="attribute-value">1</span><span>;  </span></li><li><span>    public $</span><span class="attribute">pageSize</span><span> = </span><span class="attribute-value">20</span><span>;  </span></li><li class="alt"><span>    public $</span><span class="attribute">pageCount</span><span> = </span><span class="attribute-value">0</span><span>;  </span></li><li><span>    public $</span><span class="attribute">offset</span><span> = </span><span class="attribute-value">0</span><span>;  </span></li><li class="alt"><span>    public $</span><span class="attribute">pageString</span><span> = </span><span class="attribute-value">'page'</span><span>;  </span></li><li><span> </span></li><li class="alt"><span>    private $</span><span class="attribute">script</span><span> = </span><span class="attribute-value">null</span><span>;  </span></li><li><span>    private $</span><span class="attribute">valueArray</span><span> = </span><span class="attribute-value">array</span><span>();  </span></li><li class="alt"><span> </span></li><li><span>    public function __construct($</span><span class="attribute">count</span><span>=</span><span class="attribute-value">0</span><span>, $</span><span class="attribute">size</span><span>=</span><span class="attribute-value">20</span><span>, $</span><span class="attribute">string</span><span>=</span><span class="attribute-value">'page'</span><span>)  </span></li><li class="alt"><span>    {  </span></li><li><span>        $this-</span><span class="tag">></span><span>defaultQuery();  </span></li><li class="alt"><span>        $this-</span><span class="tag">></span><span class="attribute">pageString</span><span> = $string;  </span></li><li><span>        $this-</span><span class="tag">></span><span class="attribute">pageSize</span><span> = </span><span class="attribute-value">abs</span><span>($size);  </span></li><li class="alt"><span>        $this-</span><span class="tag">></span><span class="attribute">rowCount</span><span> = </span><span class="attribute-value">abs</span><span>($count);  </span></li><li><span> </span></li><li class="alt"><span>        $this-</span><span class="tag">></span><span class="attribute">pageCount</span><span> = </span><span class="attribute-value">ceil</span><span>($this-</span><span class="tag">></span><span>rowCount/$this-</span><span class="tag">></span><span>pageSize);  </span></li><li><span>        $this-</span><span class="tag">></span><span class="attribute">pageCount</span><span> = ($this-</span><span class="tag">></span><span>pageCount</span><span class="tag"><</span><span>=0)?1:$this-</span><span class="tag">></span><span>pageCount;  </span></li><li class="alt"><span>        $this-</span><span class="tag">></span><span class="attribute">pageNo</span><span> = </span><span class="attribute-value">abs</span><span>(intval(@$_GET[$this-</span><span class="tag">></span><span>pageString]));  </span></li><li><span>        $this-</span><span class="tag">></span><span class="attribute">pageNo</span><span> = $this-</span><span class="tag">></span><span class="attribute">pageNo</span><span>==0 ? 1 : $this-</span><span class="tag">></span><span>pageNo;  </span></li><li class="alt"><span>        $this-</span><span class="tag">></span><span class="attribute">pageNo</span><span> = $this-</span><span class="tag">></span><span>pageNo</span><span class="tag">></span><span>$this-</span><span class="tag">></span><span>pageCount   </span></li><li><span>            ? $this-</span><span class="tag">></span><span>pageCount : $this-</span><span class="tag">></span><span>pageNo;  </span></li><li class="alt"><span>        $this-</span><span class="tag">></span><span class="attribute">offset</span><span> = ( $this-</span><span class="tag">></span><span>pageNo - 1 ) * $this-</span><span class="tag">></span><span>pageSize;  </span></li><li><span>    }  </span></li><li class="alt"><span> </span></li><li><span>    private function genURL( $param, $value ){  </span></li><li class="alt"><span>        $</span><span class="attribute">valueArray</span><span> = $this-</span><span class="tag">></span><span>valueArray;  </span></li><li><span>        $valueArray[$param] = $value;  </span></li><li class="alt"><span>        return $this-</span><span class="tag">></span><span>script . '?' . http_build_query($valueArray);  </span></li><li><span>    }  </span></li><li class="alt"><span> </span></li><li><span>    private function defaultQuery()  </span></li><li class="alt"><span>    {  </span></li><li><span>        ($</span><span class="attribute">script_uri</span><span> = @$_SERVER['SCRIPT_URI'])  ($</span><span class="attribute">script_uri</span><span> = @$_SERVER['REQUEST_URI']);  </span></li><li class="alt"><span>        $</span><span class="attribute">q_pos</span><span> = </span><span class="attribute-value">strpos</span><span>($script_uri,'?');  </span></li><li><span>        if ( $q_pos </span><span class="tag">></span><span> 0 )  </span></li><li class="alt"><span>        {  </span></li><li><span>            $</span><span class="attribute">qstring</span><span> = </span><span class="attribute-value">substr</span><span>($script_uri, $q_pos+1);  </span></li><li class="alt"><span>            parse_str($qstring, $valueArray);  </span></li><li><span>            $</span><span class="attribute">script</span><span> = </span><span class="attribute-value">substr</span><span>($script_uri,0,$q_pos);  </span></li><li class="alt"><span>        }  </span></li><li><span>        else  </span></li><li class="alt"><span>        {  </span></li><li><span>            $</span><span class="attribute">script</span><span> = $script_uri;  </span></li><li class="alt"><span>            $</span><span class="attribute">valueArray</span><span> = </span><span class="attribute-value">array</span><span>();  </span></li><li><span>        }  </span></li><li class="alt"><span>        $this-</span><span class="tag">></span><span class="attribute">valueArray</span><span> = </span><span class="attribute-value">empty</span><span>($valueArray) ? array() : $valueArray;  </span></li><li><span>        $this-</span><span class="tag">></span><span class="attribute">script</span><span> = $script;  </span></li><li class="alt"><span>    }  </span></li><li><span> </span></li><li class="alt"><span>    public function paginate($</span><span class="attribute">switch</span><span>=</span><span class="attribute-value">1</span><span>){  </span></li><li><span>        $</span><span class="attribute">from</span><span> = $this-</span><span class="tag">></span><span>pageSize*($this-</span><span class="tag">></span><span>pageNo-1)+1;  </span></li><li class="alt"><span>        $</span><span class="attribute">from</span><span> = ($from</span><span class="tag">></span><span>$this-</span><span class="tag">></span><span>rowCount) ? $this-</span><span class="tag">></span><span>rowCount : $from;  </span></li><li><span>        $</span><span class="attribute">to</span><span> = $this-</span><span class="tag">></span><span>pageNo * $this-</span><span class="tag">></span><span>pageSize;  </span></li><li class="alt"><span>        $</span><span class="attribute">to</span><span> = ($to</span><span class="tag">></span><span>$this-</span><span class="tag">></span><span>rowCount) ? $this-</span><span class="tag">></span><span>rowCount : $to;  </span></li><li><span>        $</span><span class="attribute">size</span><span> = $this-</span><span class="tag">></span><span>pageSize;  </span></li><li class="alt"><span>        $</span><span class="attribute">no</span><span> = $this-</span><span class="tag">></span><span>pageNo;  </span></li><li><span>        $</span><span class="attribute">max</span><span> = $this-</span><span class="tag">></span><span>pageCount;  </span></li><li class="alt"><span>        $</span><span class="attribute">total</span><span> = $this-</span><span class="tag">></span><span>rowCount;  </span></li><li><span> </span></li><li class="alt"><span>        return array(  </span></li><li><span>            'offset' =</span><span class="tag">></span><span> $this-</span><span class="tag">></span><span>offset,  </span></li><li class="alt"><span>            'from' =</span><span class="tag">></span><span> $from,  </span></li><li><span>            'to' =</span><span class="tag">></span><span> $to,  </span></li><li class="alt"><span>            'size' =</span><span class="tag">></span><span> $size,  </span></li><li><span>            'no' =</span><span class="tag">></span><span> $no,  </span></li><li class="alt"><span>            'max' =</span><span class="tag">></span><span> $max,  </span></li><li><span>            'total' =</span><span class="tag">></span><span> $total,  </span></li><li class="alt"><span>        );  </span></li><li><span>    }  </span></li><li class="alt"><span> </span></li><li><span>    public function GenWap() {  </span></li><li class="alt"><span>        $</span><span class="attribute">r</span><span> = $this-</span><span class="tag">></span><span>paginate();  </span></li><li><span>        $</span><span class="attribute">pagestring</span><span>= </span><span class="attribute-value">'<p align="right">'</span><span>;  </span></li><li class="alt"><span>        if( $this-</span><span class="tag">></span><span>pageNo </span><span class="tag">></span><span> 1 ){  </span></li><li><span>            $</span><span class="attribute">pageString.</span><span>= </span><span class="attribute-value">'4 <a href="http://www.cxybl.com/'</span><span> . $this-</span><span class="tag">></span><span>genURL($this-</span><span class="tag">></span><span>pageString, $this-</span><span class="tag">></span><span>pageNo-1) . '" </span><span class="attribute">accesskey</span><span>=</span><span class="attribute-value">"4"</span><span class="tag">></span><span>上页</span><span class="tag"></</span><span class="tag-name">a</span><span class="tag">></span><span>';  </span></li><li class="alt"><span>        }  </span></li><li><span>        if( $this-</span><span class="tag">></span><span>pageNo </span><span class="tag">></span><span>1 && $this-</span><span class="tag">></span><span>pageNo </span><span class="tag"><</span><span> $this-</span><span class="tag">></span><span>pageCount ){  </span></li><li class="alt"><span>            $</span><span class="attribute">pageString.</span><span>= </span><span class="attribute-value">'|'</span><span>;  </span></li><li><span>        }  </span></li><li class="alt"><span>        if( $this-</span><span class="tag">></span><span>pageNo </span><span class="tag"><</span><span> $this-</span><span class="tag">></span><span>pageCount ) {  </span></li><li><span>            $</span><span class="attribute">pageString.</span><span>= </span><span class="attribute-value">'<a href="http://www.cxybl.com/'</span><span> .$this-</span><span class="tag">></span><span>genURL($this-</span><span class="tag">></span><span>pageString, $this-</span><span class="tag">></span><span>pageNo+1) . '" </span><span class="attribute">accesskey</span><span>=</span><span class="attribute-value">"6"</span><span class="tag">></span><span>下页</span><span class="tag"></</span><span class="tag-name">a</span><span class="tag">></span><span> 6';  </span></li><li class="alt"><span>        }  </span></li><li><span>        $</span><span class="attribute">pageString.</span><span>= </span><span class="attribute-value">'</p>
                    <div class="aritcle_card">
                        <a class="aritcle_card_img" href="/ai/735">
                            <img src="https://img.php.cn/upload/ai_manual/001/246/273/68b6cdbf48df2598.png" alt="代码小浣熊">
                        </a>
                        <div class="aritcle_card_info">
                            <a href="/ai/735">代码小浣熊</a>
                            <p>代码小浣熊是基于商汤大语言模型的软件智能研发助手,覆盖软件需求分析、架构设计、代码编写、软件测试等环节</p>
                            <div class="">
                                <img src="/static/images/card_xiazai.png" alt="代码小浣熊">
                                <span>51</span>
                            </div>
                        </div>
                        <a href="/ai/735" class="aritcle_card_btn">
                            <span>查看详情</span>
                            <img src="/static/images/cardxiayige-3.png" alt="代码小浣熊">
                        </a>
                    </div>
                '</span><span>;  </span></li><li class="alt"><span>        return $pageString;  </span></li><li><span>    }  </span></li><li class="alt"><span> </span></li><li><span>    public function GenBasic() {  </span></li><li class="alt"><span>        $</span><span class="attribute">r</span><span> = $this-</span><span class="tag">></span><span>paginate();  </span></li><li><span>        $</span><span class="attribute">buffer</span><span> = </span><span class="attribute-value">null</span><span>;  </span></li><li class="alt"><span>        $</span><span class="attribute">index</span><span> = </span><span class="attribute-value">'首页'</span><span>;  </span></li><li><span>        $</span><span class="attribute">pre</span><span> = </span><span class="attribute-value">'上一页'</span><span>;  </span></li><li class="alt"><span>        $</span><span class="attribute">next</span><span> = </span><span class="attribute-value">'下一页'</span><span>;  </span></li><li><span>        $</span><span class="attribute">last</span><span> = </span><span class="attribute-value">'末页'</span><span>;  </span></li><li class="alt"><span> </span></li><li><span>        if ($this-</span><span class="tag">></span><span>pageCount</span><span class="tag"><</span><span>=7) {   </span></li><li class="alt"><span>            $</span><span class="attribute">range</span><span class="attribute-value">range</span><span> = range(1,$this-</span><span class="tag">></span><span>pageCount);  </span></li><li><span>        } else {  </span></li><li class="alt"><span>            $</span><span class="attribute">min</span><span> = $this-</span><span class="tag">></span><span>pageNo - 3;  </span></li><li><span>            $</span><span class="attribute">max</span><span> = $this-</span><span class="tag">></span><span>pageNo + 3;  </span></li><li class="alt"><span>            if ($min </span><span class="tag"><</span><span> </span><span class="tag-name">1</span><span>) {  </span></li><li><span>                $max += (3-$min);  </span></li><li class="alt"><span>                $</span><span class="attribute">min</span><span> = </span><span class="attribute-value">1</span><span>;  </span></li><li><span>            }  </span></li><li class="alt"><span>            if ( $max </span><span class="tag">></span><span> $this-</span><span class="tag">></span><span>pageCount ) {  </span></li><li><span>                $min </span><span class="attribute">-</span><span>= ( $max - $this-</span><span class="tag">></span><span>pageCount );  </span></li><li class="alt"><span>                $</span><span class="attribute">max</span><span> = $this-</span><span class="tag">></span><span>pageCount;  </span></li><li><span>            }  </span></li><li class="alt"><span>            $</span><span class="attribute">min</span><span> = ($min</span><span class="tag">></span><span>1) ? $min : 1;  </span></li><li><span>            $</span><span class="attribute">range</span><span class="attribute-value">range</span><span> = range($min, $max);  </span></li><li class="alt"><span>        }  </span></li><li><span>          </span></li><li class="alt"><span>        $buffer </span><span class="attribute">.</span><span>= </span><span class="attribute-value">'<ul class="paginator">'</span><span>;  </span></li><li><span>        $buffer </span><span class="attribute">.</span><span>= </span><span class="attribute-value">"<li>({$this->rowCount})</li>"</span><span>;  </span></li><li class="alt"><span>        if ($this-</span><span class="tag">></span><span>pageNo </span><span class="tag">></span><span> 1) {  </span></li><li><span>            $buffer </span><span class="attribute">.</span><span>= </span><span class="attribute-value">"<li><a href='http://www.cxybl.com/"</span><span>.$this-</span><span class="tag">></span><span>genURL($this-</span><span class="tag">></span><span>pageString,1)."'</span><span class="tag">></span><span>{$index}</span><span class="tag"></</span><span class="tag-name">a</span><span class="tag">></span><span class="tag"><</span><span class="tag-name">li</span><span class="tag">></span><span class="tag"><</span><span class="tag-name">a</span><span> </span><span class="attribute">href</span><span>=</span><span class="attribute-value">'http://www.cxybl.com/".$this->genURL($this->pageString,$this->pageNo-1)."'</span><span class="tag">></span><span>{$pre}</span><span class="tag"></</span><span class="tag-name">a</span><span class="tag">></span><span>";  </span></li><li class="alt"><span>        }  </span></li><li><span>        foreach($range AS $one) {  </span></li><li class="alt"><span>            if ( $</span><span class="attribute">one</span><span> == $this-</span><span class="tag">></span><span>pageNo ) {  </span></li><li><span>                $buffer </span><span class="attribute">.</span><span>= "</span><span class="tag"><</span><span class="tag-name">li</span><span> class=\"</span><span class="attribute-value">current</span><span>\"</span><span class="tag">></span><span>{$one}</span><span class="tag"></</span><span class="tag-name">li</span><span class="tag">></span><span>";  </span></li><li class="alt"><span>            } else {  </span></li><li><span>                $buffer </span><span class="attribute">.</span><span>= </span><span class="attribute-value">"<li><a href='http://www.cxybl.com/"</span><span>.$this-</span><span class="tag">></span><span>genURL($this-</span><span class="tag">></span><span>pageString,$one)."'</span><span class="tag">></span><span>{$one}</span><span class="tag"></</span><span class="tag-name">a</span><span class="tag">></span><span class="tag"><</span><span class="tag-name">li</span><span class="tag">></span><span>";  </span></li><li class="alt"><span>            }  </span></li><li><span>        }  </span></li><li class="alt"><span>        if ($this-</span><span class="tag">></span><span>pageNo </span><span class="tag"><</span><span> $this-</span><span class="tag">></span><span>pageCount) {  </span></li><li><span>            $buffer </span><span class="attribute">.</span><span>= </span><span class="attribute-value">"<li><a href='http://www.cxybl.com/"</span><span>.$this-</span><span class="tag">></span><span>genURL($this-</span><span class="tag">></span><span>pageString,$this-</span><span class="tag">></span><span>pageNo+1)."'</span><span class="tag">></span><span>{$next}</span><span class="tag"></</span><span class="tag-name">a</span><span class="tag">></span><span class="tag"></</span><span class="tag-name">li</span><span class="tag">></span><span class="tag"><</span><span class="tag-name">li</span><span class="tag">></span><span class="tag"><</span><span class="tag-name">a</span><span> </span><span class="attribute">href</span><span>=</span><span class="attribute-value">'http://www.cxybl.com/".$this->genURL($this->pageString, $this->pageCount)."'</span><span class="tag">></span><span>{$last}</span><span class="tag"></</span><span class="tag-name">a</span><span class="tag">></span><span class="tag"></</span><span class="tag-name">li</span><span class="tag">></span><span>";  </span></li><li class="alt"><span>        }  </span></li><li><span>        return $buffer . '</span><span class="tag"></</span><span class="tag-name">ul</span><span class="tag">></span><span>';  </span></li><li class="alt"><span>    }  </span></li><li><span>}  </span></li><li class="alt"><span class="tag">?></span><span> </span></li></ol>
登录后复制



PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号