当前位置:首页 > PHP教程 > php分页 > 列表

php简单分页类实现方法

发布:smiling 来源: PHP粉丝网  添加日期:2021-05-14 23:34:27 浏览: 评论:0 

这篇文章主要介绍了php简单分页类实现方法,实例分析了php分页类的实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下。

本文实例讲述了php简单分页类实现方法,分享给大家供大家参考,具体如下:

  1. class PageModel {  
  2.     /** 
  3.      * 获取分页数组 
  4.      * @param unknown $page 当前页面数 
  5.      * @param unknown $goodsCount 商品总数 
  6.      * @param unknown $pageLength 每个页面展示页面数 
  7.      */  
  8.     public static function getPageArr($page$goodsCount$pageCountLength$pageLength) {  
  9.         //页面总数  
  10.         $allPageCount = ceil($goodsCount / $pageLength);  
  11.        //如果页面总是比长度短,设定页面长度为页面总数  
  12.        if ($allPageCount <= $pageCountLength) {  
  13.            $allPageCount = ceil($goodsCount / $pageLength);  
  14.        }  
  15.         //总页面数一页展示完  
  16.         if ($allPageCount <= $pageCountLength) {  
  17.             for ($i = 0; $i < $allPageCount$i ++) {  
  18.                 $arr[] = array('page' => $i + 1);  
  19.             }  
  20.             return $arr;  
  21.         }  
  22.         //前后的长度  
  23.         $halfLength = floor($pageCountLength / 2);  
  24.         //因为太小,所以放原来位置,左边  
  25.         if ($page <= $halfLength) {  
  26.             $arr = array();  
  27.             for ($i = 0; $i < $pageCountLength$i ++) {  
  28.                 $arr[] = array('page' => $i + 1);  
  29.             }  
  30.             return $arr;  
  31.         }  
  32.         //太大,只取到边缘,超出也只取到边缘  
  33.         if ($page > $allPageCount - floor($pageCountLength / 2)) {  
  34.             for ($i = -$pageCountLength$i < 0; $i ++) {  
  35.                 $arr[] = array('page' => $allPageCount + $i + 1);  
  36.             }  
  37.             return $arr;  
  38.         }  
  39.         //中间的数,把中间的取出来  
  40.         for ($i = -$halfLength$i < $pageCountLength - $halfLength$i ++) {  
  41.             $arr[] = array('page' => $page + $i);  
  42.         } 
  43.         return $arr
  44.     } 

希望本文所述对大家的php程序设计有所帮助。

Tags: php简单分页类

分享到: