php 3行代码的分页算法(求起始页和结束页)

yipeiwu_com6年前PHP代码库
一个好的分页算法, 应该具有下面的优点:

当前页码应该尽量在正中间.
如果"首页"和"尾页"不可用(当前处于第一页或最后一页), 不要隐藏这两组文字, 以免链接按钮位置变动.
算法简单.
下面的算法具有前面1和3两个优点.
复制代码 代码如下:

// $curr_index, 当前页码.
// $link_count, 链接数量.
// $page_count, 当前的数据的总页数.
// $start, 显示时的起始页码.
// $end, 显示时的终止页码.
$start = max(1, $curr_index - intval($link_count/2));
$end = min($start + $link_count - 1, $page_count);
$start = max(1, $end - $link_count + 1);
start = Math.max(1, curr_index - parseInt(link_count/2));
end = Math.min(page_count, start + link_count - 1);
start = Math.max(1, end - link_count + 1);

相关文章

PHP实现根据银行卡号判断银行

bankList.php请在文章末尾下载 header('Content-type:text/html;charset=utf-8'); require_once('bankLis...

PHP双向链表定义与用法示例

本文实例讲述了PHP双向链表定义与用法。分享给大家供大家参考,具体如下: 由于需要对一组数据多次进行移动操作,所以写个双向链表。但对php实在不熟悉,虽然测试各个方法没啥问题,就是不知道...

php_pdo 预处理语句详解

这篇文章主要介绍的是关于php_pdo 预处理语句,下面话不多说,我们来看看详细的内容。 一、预处理语句可以带来两大好处: 1、查询仅需解析(或预处理)一次,但可以用相同或不同的参数执行...

PHP设计模式之工厂方法设计模式实例分析

本文实例讲述了PHP设计模式之工厂方法设计模式。分享给大家供大家参考,具体如下: 一、什么是工厂方法模式 作为一种创建型设计模式,工厂方法模式就是要创建“某种东西”。对于工厂方法,要创建...

PHP学习笔记(一) 简单了解PHP

PHP学习笔记(一) 简单了解PHP

目标规划: 通过第一节课,我们可以了解php环境. 1.环境的认识: 2.访问方法: 3.修改代码及查看. 4.变量的使用 5.代码缩进要有层次关系,而且代码之间最好保留空行 6.变量命...