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中的buffer缓冲区用法分析

本文实例讲述了php中的buffer缓冲区用法。分享给大家供大家参考,具体如下: buffer其实就是缓冲区,一个内存地址空间,主要用于存储数据 <?php echo...

php生成随机密码的几种方法

随机密码也就是一串固定长度的字符串,这里我收集整理了几种生成随机字符串的方法,以供大家参考。 方法一:      1、在 33 – 1...

php ci框架验证码实例分析

php代码:复制代码 代码如下:<?php class Captcha_code{ var $width='60'; var $num='4'; va...

php下判断数组中是否存在相同的值array_unique

array_unique(PHP 4 >= 4.0.1, PHP 5) array_unique -- 移除数...

学习php设计模式 php实现享元模式(flyweight)

学习php设计模式 php实现享元模式(flyweight)

一、意图 运用共享技术有效的支持大量细粒度的对象 享元模式变化的是对象的存储开销 二、享元模式结构图 三、享元模式中主要角色 抽象享元(Flyweight)角色:此角色是所有的具体享元...