php简单分页类实现方法


Posted in PHP onFebruary 26, 2015

本文实例讲述了php简单分页类实现方法。分享给大家供大家参考。具体如下:

class PageModel {  

    /** 

     * 获取分页数组 

     * @param unknown $page 当前页面数 

     * @param unknown $goodsCount 商品总数 

     * @param unknown $pageLength 每个页面展示页面数 

     */  

    public static function getPageArr($page, $goodsCount, $pageCountLength, $pageLength) {  

        //页面总数  

        $allPageCount = ceil($goodsCount / $pageLength);  

       //如果页面总是比长度短,设定页面长度为页面总数  

       if ($allPageCount <= $pageCountLength) {  

           $allPageCount = ceil($goodsCount / $pageLength);  

       }  

        //总页面数一页展示完  

        if ($allPageCount <= $pageCountLength) {  

            for ($i = 0; $i < $allPageCount; $i ++) {  

                $arr[] = array('page' => $i + 1);  

            }  

            return $arr;  

        }  

        //前后的长度  

        $halfLength = floor($pageCountLength / 2);  

        //因为太小,所以放原来位置,左边  

        if ($page <= $halfLength) {  

            $arr = array();  

            for ($i = 0; $i < $pageCountLength; $i ++) {  

                $arr[] = array('page' => $i + 1);  

            }  

            return $arr;  

        }  

        //太大,只取到边缘,超出也只取到边缘  

        if ($page > $allPageCount - floor($pageCountLength / 2)) {  

            for ($i = -$pageCountLength; $i < 0; $i ++) {  

                $arr[] = array('page' => $allPageCount + $i + 1);  

            }  

            return $arr;  

        }  

        //中间的数,把中间的取出来  

        for ($i = -$halfLength; $i < $pageCountLength - $halfLength; $i ++) {  

            $arr[] = array('page' => $page + $i);  

        }

        return $arr;

    }

}

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
php仿ZOL分页类代码
Oct 02 PHP
php eval函数用法总结
Oct 31 PHP
PHP5.5和之前的版本empty函数的不同之处
Jun 13 PHP
ThinkPHP之M方法实例详解
Jun 20 PHP
Yii清理缓存的方法
Jan 06 PHP
PHP执行linux命令常用函数汇总
Feb 02 PHP
PHP中PDO连接数据库中各种DNS设置方法小结
May 13 PHP
PHP自动补全表单的两种方法
Mar 06 PHP
PHP中in_array的隐式转换的解决方法
Mar 06 PHP
PHP使用DOM对XML解析处理操作示例
Jul 04 PHP
php操作redis数据库常见方法实例总结
Feb 20 PHP
thinkphp框架无限级栏目的排序功能实现方法示例
Mar 29 PHP
PHP删除指定目录中的所有目录及文件的方法
Feb 26 #PHP
PHP获取文件相对路径的方法
Feb 26 #PHP
CentOS安装php v8js教程
Feb 26 #PHP
php设计模式之单例模式实例分析
Feb 25 #PHP
PHP实现一维数组转二维数组的方法
Feb 25 #PHP
PHP中字符安全过滤函数使用小结
Feb 25 #PHP
PHP 魔术变量和魔术函数详解
Feb 25 #PHP
You might like
用PHP函数解决SQL injection
2006/10/09 PHP
Thinkphp框架中D方法与M方法的区别
2016/12/23 PHP
详解PHP中的外观模式facade pattern
2018/02/05 PHP
用php实现分页效果的示例代码
2020/12/10 PHP
Extjs中TabPane如何嵌套在其他网页中实现思路及代码
2013/01/27 Javascript
jquery制作居中遮罩层效果分享
2014/02/21 Javascript
JS实现的简洁纵向滑动菜单(滑动门)效果
2015/10/19 Javascript
Angular ng-repeat指令实例以及扩展部分
2016/12/26 Javascript
详解网站中图片日常使用以及优化手法
2017/01/09 Javascript
jQuery实现简单弹窗遮罩效果
2017/02/27 Javascript
从零开始用electron手撸一个截屏工具的示例代码
2018/10/10 Javascript
详解如何在Angular优雅编写HTTP请求
2018/12/05 Javascript
如何基于原生javaScript生成带图片的二维码
2019/11/21 Javascript
在Angular中实现一个级联效果的下拉框的示例代码
2020/05/20 Javascript
微信小程序自定义yPicker组件实现省市区三级联动功能
2020/10/29 Javascript
Django静态资源URL STATIC_ROOT的配置方法
2014/11/08 Python
python连接远程ftp服务器并列出目录下文件的方法
2015/04/01 Python
Python的Flask框架中配置多个子域名的方法讲解
2016/06/07 Python
Python数据结构之顺序表的实现代码示例
2017/11/15 Python
Python爬虫使用脚本登录Github并查看信息
2018/07/16 Python
Python二进制文件读取并转换为浮点数详解
2019/06/25 Python
python多任务之协程的使用详解
2019/08/26 Python
Python-Flask:动态创建表的示例详解
2019/11/22 Python
Troy-Bilt官网:草坪割草机、吹雪机、分蘖机等
2019/02/19 全球购物
Contém1g官网:巴西彩妆品牌
2020/01/17 全球购物
项目经理的岗位职责
2013/11/23 职场文书
普通院校学生的自荐信
2013/11/27 职场文书
幼儿园老师辞职信
2014/01/20 职场文书
结对共建工作方案
2014/06/02 职场文书
大学课外活动总结
2014/07/09 职场文书
师德师风自我剖析材料
2014/09/27 职场文书
单位委托书格式范本
2014/09/29 职场文书
企业安全隐患排查治理制度
2015/08/05 职场文书
入党后的感想
2015/08/10 职场文书
Redis可视化客户端小结
2021/06/10 Redis
HTML基础详解(下)
2021/10/16 HTML / CSS