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中ob(Output Buffer 输出缓冲)函数使用方法
Jul 21 PHP
php 删除记录实现代码
Mar 12 PHP
PHP下获取上个月、下个月、本月的日期(strtotime,date)
Feb 02 PHP
PHP四舍五入、取整、round函数使用示例
Feb 06 PHP
php选择排序法实现数组排序实例分析
Feb 16 PHP
php+curl 发送图片处理代码分享
Jul 09 PHP
php删除数组中重复元素的方法
Dec 22 PHP
Laravel使用Caching缓存数据减轻数据库查询压力的方法
Mar 15 PHP
JS+PHP实现用户输入数字后显示最大的值及所在位置
Jun 19 PHP
PHP实践教程之过滤、验证、转义与密码详解
Jul 24 PHP
PHP读取目录树的实现方法分析
Mar 22 PHP
PHP经典设计模式之依赖注入定义与用法详解
May 21 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/10/09 PHP
php disk_free_space 返回目录可用空间
2010/05/10 PHP
php获取网页上所有链接的方法
2015/04/03 PHP
Windows2003下php5.4安装配置教程(IIS)
2016/06/30 PHP
PHP使用mysql与mysqli连接Mysql数据库用法示例
2016/07/07 PHP
PHP magento后台无法登录问题解决方法
2016/11/24 PHP
微信公众平台开发教程③ PHP实现微信公众号支付功能图文详解
2019/04/10 PHP
php文件上传原理与实现方法详解
2019/12/20 PHP
javascript Split方法,indexOf方法、lastIndexOf 方法和substring 方法
2009/03/21 Javascript
Dreamweaver jQuery智能提示插件,支持版本提示,支持1.6api
2011/07/31 Javascript
jQuery实现元素拖拽并cookie保存顺序的方法
2016/02/20 Javascript
jQuery通过改变input的type属性实现密码显示隐藏切换功能
2017/02/08 Javascript
jQuery插件zTree实现删除树子节点的方法示例
2017/03/08 Javascript
Three.js利用dat.GUI如何简化试验流程详解
2017/09/26 Javascript
vue检测对象和数组的变化分析
2018/06/30 Javascript
浅析Vue项目中使用keep-Alive步骤
2018/07/27 Javascript
分享5个小技巧让你写出更好的 JavaScript 条件语句
2018/10/20 Javascript
vue-openlayers实现地图坐标弹框效果
2020/09/24 Javascript
利用js canvas实现五子棋游戏
2020/10/11 Javascript
Nuxt的路由动画效果案例
2020/11/06 Javascript
如何使用gpu.js改善JavaScript的性能
2020/12/01 Javascript
在Python的Django框架中包装视图函数
2015/07/20 Python
Python制作Windows系统服务
2017/03/25 Python
python实现简单登陆流程的方法
2018/04/22 Python
pytorch下大型数据集(大型图片)的导入方式
2020/01/08 Python
Python 使用双重循环打印图形菱形操作
2020/08/09 Python
HTML5 Blob对象的具体使用
2020/05/22 HTML / CSS
印尼披萨外送专家:Domino’s Pizza印尼
2017/12/28 全球购物
应届生学校辅导员求职信
2013/11/07 职场文书
房地产推广策划方案
2014/05/19 职场文书
关于青春的演讲稿500字
2014/08/22 职场文书
就业协议书盖章的注意事项
2014/09/28 职场文书
离婚协议书标准格式
2014/10/04 职场文书
政风行风整改报告
2014/11/06 职场文书
小学安全工作总结2015
2015/05/18 职场文书
如何用Laravel包含你自己的帮助函数
2021/05/27 PHP