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 /************ *汉字转换拼音Class *********...

PHP中session跨子域的三种实现方法

PHP中session跨子域的三种实现方法

在之前做东西的时候session一般就直接存在数据库中这样就能解决跨域不仅仅是跨子域,但是今天遇到这个问题是,自己要在别人现有的东西上面做修改。由于仅仅是子域当时就想肯定有简单的解决方法...

php进程(线程)通信基础之System V共享内存简单实例分析

php进程(线程)通信基础之System V共享内存简单实例分析

本文实例讲述了php进程(线程)通信基础之System V共享内存。分享给大家供大家参考,具体如下: PHP默认情况没有开启功能,要支持该功能在编译PHP的时候要加入下面几个选项&nbs...

php 禁止页面缓存输出

复制代码 代码如下:<?php header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); header('Last-Modified: '...

php中var_export与var_dump的区别分析

一 var_dump (PHP 3 >= 3.0.5, PHP 4, PHP 5) var_dump -- 打印变量的相关信息 描述 void var_dump ( mixed e...