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制作静态网站的模板框架
Oct 09 PHP
编写PHP的安全策略
Oct 09 PHP
Win2003下APACHE+PHP5+MYSQL4+PHPMYADMIN 的简易安装配置
Nov 18 PHP
PHP 强制性文件下载功能的函数代码(任意文件格式)
May 26 PHP
php购物网站支付paypal使用方法
Nov 28 PHP
解析php中static,const与define的使用区别
Jun 18 PHP
浅谈PDO的rowCount函数
Jun 18 PHP
ThinkPHP2.x防范XSS跨站攻击的方法
Sep 25 PHP
PHP使用file_get_content设置头信息的方法
Feb 14 PHP
PHP命名空间和自动加载类
Apr 03 PHP
php数据库操作model类(使用__call方法)
Nov 16 PHP
php 使用ActiveMQ发送消息,与处理消息操作示例
Feb 23 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设计模式之调解者模式的深入解析
2013/06/13 PHP
解决laravel5.4下的group by报错的问题
2019/10/16 PHP
Aster vs KG BO3 第二场2.18
2021/03/10 DOTA
Avengerls vs KG BO3 第三场2.18
2021/03/10 DOTA
IE与Firefox在JavaScript上的7个不同写法小结
2009/09/14 Javascript
jquery自动完成插件(autocomplete)应用之PHP版
2009/12/15 Javascript
javascript Window及document对象详细整理
2011/01/12 Javascript
中文输入法不触发onkeyup事件的解决办法
2014/07/09 Javascript
js使用setTimeout实现定时炸弹的方法
2015/04/10 Javascript
基于JavaScript实现添加到购物车效果附源码下载
2016/08/22 Javascript
原生js实现无缝轮播图效果
2017/01/11 Javascript
AngularJS 验证码60秒倒计时功能的实现
2017/06/05 Javascript
vue-cli+webpack项目 修改项目名称的方法
2018/02/28 Javascript
vue.js 实现图片本地预览 裁剪 压缩 上传功能
2018/03/01 Javascript
图文详解vue框架安装步骤
2019/02/12 Javascript
vue eslint简要配置教程详解
2019/07/26 Javascript
JS代码优化的8点建议
2020/02/04 Javascript
js实现单元格拖拽效果
2020/02/10 Javascript
Vue实现简单的跑马灯
2020/05/25 Javascript
原生JavaScript实现贪吃蛇游戏
2020/11/04 Javascript
[03:32]2014DOTA2西雅图邀请赛 CIS外卡赛赛前black专访
2014/07/09 DOTA
详细讲解Python中的文件I/O操作
2015/05/24 Python
Python迭代器与生成器用法实例分析
2018/07/09 Python
使用Python 统计高频字数的方法
2019/01/31 Python
Django choices下拉列表绑定实例
2020/03/13 Python
python 发送get请求接口详解
2020/11/17 Python
python实现银行账户系统
2021/02/22 Python
UNIX特点都有哪些
2016/04/05 面试题
2013年保送生自荐信格式
2013/11/20 职场文书
校本教研工作制度
2014/01/22 职场文书
户外亲子活动策划方案
2014/02/07 职场文书
2014年父亲节活动方案
2014/03/06 职场文书
委托协议书范本
2014/04/22 职场文书
房屋买卖授权委托书
2014/09/27 职场文书
学生抄袭作业的检讨书
2014/10/02 职场文书
升职感谢领导的话语及升职感谢信
2019/06/24 职场文书