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

PHP简单漂亮的分页类

php中文网
发布: 2016-06-07 11:38:17
原创
1205人浏览过

本文介绍一款原生的PHP分页类,分页样式有点类似bootstrap。
PHP简单漂亮的分页类<?php <br /><br> /* * *********************************************<br>  * @类名:   page<br>  * @参数:   $myde_total - 总记录数<br>  *          $myde_size - 一页显示的记录数<br>  *          $myde_page - 当前页<br>  *          $myde_url - 获取当前的url<br>  * @功能:   分页实现<br>  * @作者:   宋海阁<br>  */<br><br> class page {<br><br>     private $myde_total;          //总记录数<br>     private $myde_size;           //一页显示的记录数<br>     private $myde_page;           //当前页<br>     private $myde_page_count;     //总页数<br>     private $myde_i;              //起头页数<br>     private $myde_en;             //结尾页数<br>     private $myde_url;            //获取当前的url<br>     /*<br>      * $show_pages<br>      * 页面显示的格式,显示链接的页数为2*$show_pages+1。<br>      * 如$show_pages=2那么页面上显示就是[首页] [上页] 1 2 3 4 5 [下页] [尾页] <br>      */<br>     private $show_pages;<br><br>     public function __construct($myde_total = 1, $myde_size = 1, $myde_page = 1, $myde_url, $show_pages = 2) {<br>         $this->myde_total = $this->numeric($myde_total);<br>         $this->myde_size = $this->numeric($myde_size);<br>         $this->myde_page = $this->numeric($myde_page);<br>         $this->myde_page_count = ceil($this->myde_total / $this->myde_size);<br>         $this->myde_url = $myde_url;<br>         if ($this->myde_total              $this->myde_total = 0;<br>         if ($this->myde_page              $this->myde_page = 1;<br>         if ($this->myde_page_count              $this->myde_page_count = 1;<br>         if ($this->myde_page > $this->myde_page_count)<br>             $this->myde_page = $this->myde_page_count;<br>         $this->limit = ($this->myde_page - 1) * $this->myde_size;<br>         $this->myde_i = $this->myde_page - $show_pages;<br>         $this->myde_en = $this->myde_page + $show_pages;<br>         if ($this->myde_i              $this->myde_en = $this->myde_en + (1 - $this->myde_i);<br>             $this->myde_i = 1;<br>         }<br>         if ($this->myde_en > $this->myde_page_count) {<br>             $this->myde_i = $this->myde_i - ($this->myde_en - $this->myde_page_count);<br>             $this->myde_en = $this->myde_page_count;<br>         }<br>         if ($this->myde_i              $this->myde_i = 1;<br>     }<br><br>     //检测是否为数字<br>     private function numeric($num) {<br>         if (strlen($num)) {<br>             if (!preg_match("/^[0-9]+$/", $num)) {<br>                 $num = 1;<br>             } else {<br>                 $num = substr($num, 0, 11);<br>             }<br>         } else {<br>             $num = 1;<br>         }<br>         return $num;<br>     }<br><br>     //地址替换<br>     private function page_replace($page) {<br>         return str_replace("{page}", $page, $this->myde_url);<br>     }<br><br>     //首页<br>     private function myde_home() {<br>         if ($this->myde_page != 1) {<br>             return "<a>page_replace(1) . "' title='首页'>首页</a>";<br>         } else {<br>             return "<p>首页</p>";<br>         }<br>     }<br><br>     //上一页<br>     private function myde_prev() {<br>         if ($this->myde_page != 1) {<br>             return "<a>page_replace($this->myde_page - 1) . "' title='上一页'>上一页</a>";<br>         } else {<br>             return "<p>上一页</p>";<br>         }<br>     }<br><br>     //下一页<br>     private function myde_next() {<br>         if ($this->myde_page != $this->myde_page_count) {<br>             return "<a>page_replace($this->myde_page + 1) . "' title='下一页'>下一页</a>";<br>         } else {<br>             return"<p>下一页</p>";<br>         }<br>     }<br><br>     //尾页<br>     private function myde_last() {<br>         if ($this->myde_page != $this->myde_page_count) {<br>             return "<a>page_replace($this->myde_page_count) . "' title='尾页'>尾页</a>";<br>         } else {<br>             return "<p>尾页</p> <div class="aritcle_card"> <a class="aritcle_card_img" href="/xiazai/js/1000"> <img src="https://img.php.cn/upload/jscode/000/000/001/598a5fec77565480.jpg" alt="6款简洁漂亮的CSS3分页样式代码"> </a> <div class="aritcle_card_info"> <a href="/xiazai/js/1000">6款简洁漂亮的CSS3分页样式代码</a> <p>6款简洁漂亮的CSS3分页样式代码</p> <div class=""> <img src="/static/images/card_xiazai.png" alt="6款简洁漂亮的CSS3分页样式代码"> <span>169</span> </div> </div> <a href="/xiazai/js/1000" class="aritcle_card_btn"> <span>查看详情</span> <img src="/static/images/cardxiayige-3.png" alt="6款简洁漂亮的CSS3分页样式代码"> </a> </div> ";<br>         }<br>     }<br><br>     //输出<br>     public function myde_write($id = 'page') {<br>         $str = "<div>";<br>         $str.=$this->myde_home();<br>         $str.=$this->myde_prev();<br>         if ($this->myde_i > 1) {<br>             $str.="<p>...</p>";<br>         }<br>         for ($i = $this->myde_i; $i myde_en; $i++) {<br>             if ($i == $this->myde_page) {<br>                 $str.="<a>page_replace($i) . "' title='第" . $i . "页' class='cur'>$i</a>";<br>             } else {<br>                 $str.="<a>page_replace($i) . "' title='第" . $i . "页'>$i</a>";<br>             }<br>         }<br>         if ($this->myde_en myde_page_count) {<br>             $str.="<p>...</p>";<br>         }<br>         $str.=$this->myde_next();<br>         $str.=$this->myde_last();<br>         $str.="<p>共<b>" . $this->myde_page_count .<br>                 "</b>页<b>" . $this->myde_total . "</b>条数据</p>";<br>         $str.="</div>";<br>         return $str;<br>     }<br><br> }<br><br> ?>分页演示地址:http://www.sucaihuo.com/php/223.html

附件 PHP简单漂亮的分页类.zip ( 3.79 KB 下载:453 次 )

AD:真正免费,域名+虚机+企业邮箱=0元

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

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

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

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