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 相关文章推荐
example2.php
Oct 09 PHP
PHP5新特性: 更加面向对象化的PHP
Nov 18 PHP
模拟flock实现文件锁定
Feb 14 PHP
怎样给PHP源代码加密?PHP二进制加密与解密的解决办法
Apr 22 PHP
在PHP上显示JFreechart画的统计图方法
Nov 03 PHP
php中strstr、strrchr、substr、stristr四个函数的区别总结
Sep 22 PHP
ThinkPHP控制器里javascript代码不能执行的解决方法
Nov 22 PHP
Zend Framework动作助手Url用法详解
Mar 05 PHP
PHP简单判断手机设备的方法
Aug 23 PHP
php 调用ffmpeg获取视频信息的简单实现
Apr 03 PHP
PHP框架实现WebSocket在线聊天通讯系统
Nov 21 PHP
php查看一个变量的占用内存的实例代码
Mar 29 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中的日期及时间
2006/11/23 PHP
(推荐一个超好的JS函数库)S.Sams Lifexperience ScriptClassLib
2007/04/29 Javascript
JS控制显示隐藏兼容问题(IE6、IE7、IE8)
2010/04/01 Javascript
FF IE浏览器修改标签透明度的方法
2014/01/27 Javascript
jquery实现弹出层遮罩效果的简单实例
2014/03/03 Javascript
js处理php输出时间戳对不上号的解决方法
2014/06/20 Javascript
jquery实现html页面 div 假分页有原理有代码
2014/09/06 Javascript
js实现Select下拉框具有输入功能的方法
2015/02/06 Javascript
javascript中call apply 的应用场景
2015/04/16 Javascript
js+html5实现canvas绘制简单矩形的方法
2015/06/05 Javascript
JavaScript DOM 对象深入了解
2016/07/20 Javascript
AngularJS通过$location获取及改变当前页面的URL
2016/09/23 Javascript
JavaScript基础——使用Canvas绘图
2016/11/02 Javascript
JS重载实现方法分析
2016/12/16 Javascript
javascript观察者模式实现自动刷新效果
2017/09/05 Javascript
详解vue2 $watch要注意的问题
2017/09/08 Javascript
angular基于ng-alain定义自己的select组件示例
2018/02/23 Javascript
Vue页面跳转传递参数及接收方式
2020/09/09 Javascript
让你30分钟快速掌握vue3教程
2020/10/26 Javascript
[51:06]2018DOTA2亚洲邀请赛3月29日 小组赛A组 KG VS Liquid
2018/03/30 DOTA
linux下安装easy_install的方法
2013/02/10 Python
python爬虫入门教程之点点美女图片爬虫代码分享
2014/09/02 Python
Python如何为图片添加水印
2016/11/25 Python
Python中动态检测编码chardet的使用教程
2017/07/06 Python
python实现kMeans算法
2017/12/21 Python
python爬取音频下载的示例代码
2020/10/19 Python
Python3压缩和解压缩实现代码
2021/03/01 Python
彻底解决pip下载pytorch慢的问题方法
2021/03/01 Python
应聘美工求职信
2013/11/07 职场文书
人事专员的职责
2014/02/26 职场文书
乔迁之喜主持词
2014/03/27 职场文书
2014年个人总结范文
2015/03/09 职场文书
2015医德医风个人工作总结
2015/04/02 职场文书
企业安全生产检查制度
2015/08/06 职场文书
2016中秋节问候语
2015/11/11 职场文书
Spring this调用当前类方法无法拦截的示例代码
2022/03/20 Java/Android