php简单分页类实现方法

 更新时间:2015年02月26日 09:49:16   作者:qiu_xiaojie  
这篇文章主要介绍了php简单分页类实现方法,实例分析了php分页类的实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了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 cookie使用方法学习笔记分享

    php cookie使用方法学习笔记分享

    在php中cookie与其它程序中没什么两样,cookie都是用来存储信息到客户端,常用用于安全性要求不高的一些应用中,如用户登录记住密码之类的,下面我来给大家介绍一下php cookie学习笔记
    2013-11-11
  • PHP回调函数简单用法示例

    PHP回调函数简单用法示例

    这篇文章主要介绍了PHP回调函数简单用法,结合实例形式分析了call_user_func()与call_user_func_array()函数区别、功能及简单使用技巧,需要的朋友可以参考下
    2019-05-05
  • 使用Canal实现PHP应用程序与MySQL数据库的实时数据同步

    使用Canal实现PHP应用程序与MySQL数据库的实时数据同步

    Canal是阿里巴巴开源的一个数据同步工具,可实现MySQL数据库到其他数据源的实时同步,PHP应用程序中可轻松使用,提高系统的可靠性和实时性,提供了丰富的API和文档支持
    2023-04-04
  • php 批量替换html标签的实例代码

    php 批量替换html标签的实例代码

    这篇文章主要是对php批量替换html标签的实例代码进行了详细的介绍,需要的朋友可以过来参考下,希望对大家有所帮助
    2013-11-11
  • PHP实现将多个文件中的内容合并为新文件的方法示例

    PHP实现将多个文件中的内容合并为新文件的方法示例

    这篇文章主要介绍了PHP实现将多个文件中的内容合并为新文件的方法,涉及php编码转换、文件与目录的遍历以及文件读写相关操作技巧,需要的朋友可以参考下
    2017-06-06
  • docker 中搭建php环境经验分享

    docker 中搭建php环境经验分享

    这篇文章主要介绍了docker 中搭建php环境经验分享的相关资料,需要的朋友可以参考下
    2023-09-09
  • php at(@)符号的用法简介

    php at(@)符号的用法简介

    对于php的初学者,经常会看到在一个函数名字前面有一个at(@)符号,但是不知道它的作用和用法,去掉后好像对程序没有什么影响,感到很困惑,简单的说@可以忽略错误,有仰制错误的功能为错误控制操作符.
    2009-07-07
  • php下关于Cannot use a scalar value as an array的解决办法

    php下关于Cannot use a scalar value as an array的解决办法

    已经定义过的一个布尔型变量在下面被我直接当数组来调用了,所以就出现错误了
    2010-08-08
  • PHP输出Excel PHPExcel的方法

    PHP输出Excel PHPExcel的方法

    这篇文章主要为大家详细介绍了PHP输出Excel PHPExcel的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-07-07
  • 延长phpmyadmin登录时间的方法

    延长phpmyadmin登录时间的方法

    新安装的phpmyadmin默认是cookie模式,如果闲置十几分钟不操作的话,就会要求重新登录。
    2011-02-02

最新评论