本文实例讲述了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程序设计有所帮助。