php简单分页类实现方法

yipeiwu_com6年前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文字转图片功能原理与实现方法分析

PHP文字转图片功能原理与实现方法分析

本文实例讲述了PHP文字转图片功能。分享给大家供大家参考,具体如下: 这项功能主要用于对邮箱地址、手机等可能被网络爬虫抓取的重要信息的处理。将文字转化为图片绝对是个好注意。验证码的基本生...

PHP file_get_contents 函数超时的几种解决方法

这里就简单介绍两种: 一、增加超时的时间限制 这里需要注意:set_time_limit只是设置你的PHP程序的超时时间,而不是file_get_contents函数读取URL的超时时间...

PHP 登录记住密码实现思路

form页面 复制代码 代码如下: <form action="login.php" method="post"> 用户名<input type="text" name...

PHP设计模式之装饰者模式代码实例

定义: 装饰者模式就是不修改原类代码和继承的情况下动态扩展类的功能。传统的编程模式都是子类继承父类实现方法重载,使用装饰器模式,只需添加一个新的装饰器对象,更加灵活,避免类数量和层次过多...

AJAX的跨域访问-两种有效的解决方法介绍

新的W3C策略实现了HTTP跨域访问,还亏我找了很久的资料解决这个问题:只需要在servlet中返回的头部信息中添加Access-Control-Allow-Origin这个既可。比如我...