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 递归效率分析
Nov 24 PHP
在PHP中检查PHP文件是否有语法错误的方法
Dec 23 PHP
php中定义网站根目录的常用方法
Aug 08 PHP
php学习之运算符相关概念
Jun 09 PHP
PHP 代码规范小结
Mar 08 PHP
PHP实现读取一个1G的文件大小
Aug 24 PHP
PHP管理依赖(dependency)关系工具 Composer 安装与使用
Aug 18 PHP
php中in_array函数用法分析
Nov 15 PHP
一个简单安全的PHP验证码类 附调用方法
Jun 24 PHP
PHP用FTP类上传文件视频等的简单实现方法
Sep 23 PHP
php  单例模式详细介绍及实现源码
Nov 05 PHP
PHP 实现 WebSocket 协议原理与应用详解
Apr 22 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
Win9x/ME下Apache+PHP安装配置
2006/10/09 PHP
实用PHP会员权限控制实现原理分析
2011/05/29 PHP
php使用pdo连接报错Connection failed SQLSTATE的解决方法
2014/12/15 PHP
关于query Javascript CSS Selector engine
2013/04/12 Javascript
关于在IE下的一个安全BUG --可用于跟踪用户的系统鼠标位置
2013/04/17 Javascript
HTML Color Picker(js拾色器效果)
2013/08/27 Javascript
nodejs中使用monk访问mongodb
2014/07/06 NodeJs
JavaScript自定义数组排序方法
2015/02/12 Javascript
基于js中的原型、继承的一些想法
2016/08/10 Javascript
AngularJS入门教程之AngularJS 模板
2016/08/18 Javascript
微信小程序本地缓存数据增删改查实例详解
2017/05/24 Javascript
JavaScript中运算符规则和隐式类型转换示例详解
2017/09/06 Javascript
vue-cli中打包图片路径错误的解决方法
2017/10/26 Javascript
jQuery+Cookie实现切换皮肤功能【附源码下载】
2018/03/25 jQuery
webpack css加载和图片加载的方法示例
2018/09/11 Javascript
layui 阻止图片上传的实例(before方法)
2019/09/26 Javascript
vue-resource post数据时碰到Django csrf问题的解决
2020/03/13 Javascript
js绘制一条直线并旋转45度
2020/08/21 Javascript
python中pycurl库的用法实例
2014/09/30 Python
python3 pillow模块实现简单验证码
2019/10/31 Python
python实现用类读取文件数据并计算矩形面积
2020/01/18 Python
Python Django中的STATIC_URL 设置和使用方式
2020/03/27 Python
解决jupyter notebook 出现In[*]的问题
2020/04/13 Python
基于python实现获取网页图片过程解析
2020/05/11 Python
HTML5实现签到 功能
2018/10/09 HTML / CSS
全球摩托车装备领导者:RevZilla
2017/09/04 全球购物
Sephora丝芙兰泰国官方网站:国际知名化妆品购物
2017/11/15 全球购物
大学毕业通用个人的求职信
2013/12/08 职场文书
亲戚结婚的请假条
2014/02/11 职场文书
如何写自我评价?自我评价写什么好?
2014/03/14 职场文书
小学教师师德承诺书
2014/05/23 职场文书
公司员工安全协议书
2014/11/21 职场文书
实习生辞职信范文
2015/03/02 职场文书
MySQL大小写敏感的注意事项
2021/05/24 MySQL
动画「进击的巨人」第86话播出感谢绘公开
2022/03/21 日漫
Java实现HTML转为Word的示例代码
2022/06/28 Java/Android