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


Posted in PHP onOctober 21, 2009

一个好的分页算法, 应该具有下面的优点:

当前页码应该尽量在正中间.
如果"首页"和"尾页"不可用(当前处于第一页或最后一页), 不要隐藏这两组文字, 以免链接按钮位置变动.
算法简单.
下面的算法具有前面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 相关文章推荐
用PHP与XML联手进行网站编程代码实例
Jul 10 PHP
php使用json_encode对变量json编码
Apr 07 PHP
浅析PHP中strlen和mb_strlen的区别
Aug 31 PHP
smarty内置函数config_load用法实例
Jan 22 PHP
php实现将数组转换为XML的方法
Mar 09 PHP
php类的定义与继承用法实例
Jul 07 PHP
php实现表单多按钮提交action的处理方法
Oct 24 PHP
PHP的Laravel框架中使用消息队列queue及异步队列的方法
Mar 21 PHP
一个简单安全的PHP验证码类、PHP验证码
Sep 24 PHP
PHP使用递归算法无限遍历数组示例
Jan 13 PHP
PHP中单例模式与工厂模式详解
Feb 17 PHP
PHP实现微信退款的方法示例
Mar 26 PHP
php实现mysql同步的实现方法
Oct 21 #PHP
php 魔术方法使用说明
Oct 20 #PHP
关于Appserv无法打开localhost问题的解决方法
Oct 16 #PHP
php foreach、while性能比较
Oct 15 #PHP
php侧拉菜单 漂亮,可以向右或者向左展开,支持FF,IE
Oct 15 #PHP
php 数学运算验证码实现代码
Oct 11 #PHP
用mysql触发器自动更新memcache的实现代码
Oct 11 #PHP
You might like
PHP - Html Transfer Code
2006/10/09 PHP
ThinkPHP实现动态包含文件的方法
2014/11/29 PHP
php单例模式的简单实现方法
2016/06/10 PHP
PHP实现动态压缩js与css文件的方法
2018/05/02 PHP
3Z版基于jquery的图片复选框(asp.net+jquery)
2010/04/12 Javascript
探索Emberjs制作一个简单的Todo应用
2012/11/07 Javascript
js校验表单后提交表单的三种方法总结
2014/02/28 Javascript
json的定义、标准格式及json字符串检验
2014/05/11 Javascript
javascript无刷新评论实现方法
2015/05/13 Javascript
JavaScript 性能优化小结
2015/10/12 Javascript
在Html中使用Requirejs进行模块化开发实例详解
2016/04/15 Javascript
微信小程序 天气预报开发实例代码源码
2017/01/20 Javascript
javascript获取指定区间范围随机数的方法
2017/09/08 Javascript
Vue header组件开发详解
2018/01/26 Javascript
react router4+redux实现路由权限控制的方法
2018/05/03 Javascript
Node.js命令行/批处理中如何更改Linux用户密码浅析
2018/07/22 Javascript
js实现下拉框二级联动
2018/12/04 Javascript
jQuery时间戳和日期相互转换操作示例
2018/12/07 jQuery
echarts实现词云自定义形状的示例代码
2019/02/20 Javascript
JavaScript多种滤镜算法实现代码实例
2019/12/10 Javascript
JavaScript实现下拉列表
2021/01/20 Javascript
[03:27]最受玩家喜爱奖提名:PZH_Element 致玩家寄语
2016/12/20 DOTA
python采集百度百科的方法
2015/06/05 Python
Python中operator模块的操作符使用示例总结
2016/06/28 Python
发布你的Python模块详解
2016/09/15 Python
python实现协同过滤推荐算法完整代码示例
2017/12/15 Python
我就是这样学习Python中的列表
2019/06/02 Python
python BlockingScheduler定时任务及其他方式的实现
2019/09/19 Python
Python如何输出警告信息
2020/07/30 Python
Python操作PostgreSql数据库的方法(基本的增删改查)
2020/12/29 Python
英国排名第一的最新设计师品牌手表独立零售商:TIC Watches
2016/09/24 全球购物
用你熟悉的语言写一个连接ORACLE数据库的程序,能够完成修改和查询工作
2012/06/11 面试题
教师对照四风自我剖析材料
2014/09/30 职场文书
技术股东合作协议书
2014/12/02 职场文书
MySQL数据库Innodb 引擎实现mvcc锁
2022/05/06 MySQL
python热力图实现的完整实例
2022/06/25 Python