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 相关文章推荐
漂亮但不安全的CTB
Oct 09 PHP
用 PHP5 轻松解析 XML
Dec 04 PHP
sourcesafe管理phpproj文件的补充说明(downmoon)
Apr 11 PHP
让PHP以ROOT权限执行系统命令的方法
Feb 10 PHP
php使HTML标签自动补全闭合函数代码
Oct 04 PHP
php按字符无乱码截取中文的方法
Mar 27 PHP
php使用Header函数,PHP_AUTH_PW和PHP_AUTH_USER做用户验证
May 04 PHP
PHP中PDO连接数据库中各种DNS设置方法小结
May 13 PHP
PHP+Ajax验证码验证用户登录
Jul 20 PHP
PHP数据库编程之MySQL优化策略概述
Aug 16 PHP
PHP实现求两个字符串最长公共子串的方法示例
Nov 17 PHP
分析php://output和php://stdout的区别
May 06 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配置文件php.ini的路径的方法
2014/08/20 PHP
php生成圆角图片的方法
2015/04/07 PHP
基于php判断客户端类型
2016/10/14 PHP
一键生成各种尺寸Icon的php脚本(实例)
2017/02/08 PHP
Sample script that displays all of the users in a given SQL Server DB
2007/06/16 Javascript
javascript 可以拖动的DIV(二)
2009/06/26 Javascript
jquery ui resizable bug解决方法
2010/10/26 Javascript
js 页面关闭前的出现提示的实现代码
2011/05/25 Javascript
javascript实现表格增删改操作实例详解
2015/05/15 Javascript
javascript实现类似百度分享功能的方法
2015/07/27 Javascript
使用jQuery ajaxupload插件实现无刷新上传文件
2017/04/23 jQuery
JS实现商品筛选功能
2020/08/19 Javascript
vue自定义tap指令及tap事件的实现
2018/09/18 Javascript
[02:53]DOTA2英雄昆卡基础教程
2013/11/25 DOTA
Python语言技巧之三元运算符使用介绍
2013/03/04 Python
Python随机生成数模块random使用实例
2015/04/13 Python
python黑魔法之编码转换
2016/01/25 Python
在dataframe两列日期相减并且得到具体的月数实例
2018/07/03 Python
python查看模块,对象的函数方法
2018/10/16 Python
Python使用pyautocad+openpyxl处理cad文件示例
2019/07/11 Python
python类的实例化问题解决
2019/08/31 Python
使用python制作游戏下载进度条的代码(程序说明见注释)
2019/10/24 Python
Python 求数组局部最大值的实例
2019/11/26 Python
python支持多线程的爬虫实例
2019/12/21 Python
用python打开摄像头并把图像传回qq邮箱(Pyinstaller打包)
2020/05/17 Python
html5 浏览器支持 如何让所有的浏览器都支持HTML5标签样式
2012/12/07 HTML / CSS
美国领先的个性化礼品商城:Personalization Mall
2019/07/27 全球购物
Made in Design德国:设计师家具、灯具和装饰
2019/10/31 全球购物
Linux常见面试题
2013/03/18 面试题
网友共享的几个面试题关于Java和Unix等方面的
2016/09/08 面试题
工程师岗位职责
2013/11/08 职场文书
高中军训感想300字
2014/03/04 职场文书
学校志愿者活动总结
2014/06/27 职场文书
体育专业大学生职业生涯规划范文:打造自己的运动帝国
2014/09/12 职场文书
python异步的ASGI与Fast Api实现
2021/07/16 Python
Python OpenCV之常用滤波器使用详解
2022/04/07 Python