php简单分页类实现方法
php简单分页类实现方法
发布时间:2016-12-29 来源:查字典编辑
摘要:本文实例讲述了php简单分页类实现方法。分享给大家供大家参考。具体如下:复制代码代码如下:classPageModel{/***获取分页数组...

本文实例讲述了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教程学习
编程开发子分类