php下封装较好的数字分页方法


Posted in PHP onNovember 23, 2010
/** 
* 获取页码导航HTML 
* @param $pageNum:当前页码 
* @param $pageSize:每页数量 
* @param $rowCount:记录总数 
* @param $navUrl:链接页面URL 
*/ 
function getNavHtml($pageNum,$pageSize,$rowCount,$navUrl){ 
$pageCount = (int)($rowCount/$pageSize); //总页数 
if ($rowCount % $pageSize >0){ 
$pageCount++; 
} 
if ($pageNum>$pageCount){ 
$pageNum = 1; 
} 
$firstNav = "<a href=\"{$navUrl}page=1\">首页</a> "; 
$lastNav = "<a href=\"{$navUrl}page={$pageCount}\">尾页</a> "; 
$prevNav=""; 
$nextNav=""; 
if ($pageNum>1){ 
$navPageNum = $pageNum-1; 
$prevNav = "<a href=\"{$navUrl}page={$navPageNum}\">上一页</a> "; 
} 
if ($pageNum<$pageCount && $pageCount>1){ 
$navPageNum = $pageNum+1; 
$nextNav = "<a href=\"{$navUrl}page={$navPageNum}\">下一页</a> "; 
} 
$amongNav=""; //关键循环 
for ($i=1;$i<=5;$i++){ 
$navPageNum = $pageNum+ $i-3; 
if ($navPageNum>0 && $navPageNum<=$pageCount){ 
$navCss = $navPageNum == $pageNum?" class=\"hover\"":""; 
$amongNav.="<a href=\"{$navUrl}page={$navPageNum}\" $navCss>{$navPageNum}</a> "; 
} 
} 
return $firstNav.$prevNav.$amongNav.$nextNav.$lastNav." ".$pageNum."/".$pageCount." 共有[".$rowCount."]条数据"; 
} 
}
PHP 相关文章推荐
mysql 全文搜索 技巧
Apr 27 PHP
php IP转换整形(ip2long)的详解
Jun 06 PHP
解析PHP函数array_flip()在重复数组元素删除中的作用
Jun 27 PHP
CodeIgniter框架过滤HTML危险代码
Jun 12 PHP
smarty内置函数config_load用法实例
Jan 22 PHP
关于WordPress的SEO优化相关的一些PHP页面脚本技巧
Dec 10 PHP
PHP使用stream_context_create()模拟POST/GET请求的方法
Apr 02 PHP
php getcwd与dirname(__FILE__)区别详解
Sep 24 PHP
PHP实现的防止跨站和xss攻击代码【来自阿里云】
Jan 29 PHP
php中pcntl_fork创建子进程的方法实例
Mar 14 PHP
php连接sftp的作用以及实例代码
Sep 23 PHP
PHP实现rar解压读取扩展包小结
Jun 03 PHP
php下使用iconv需要注意的问题
Nov 20 #PHP
批量修改RAR文件注释的php代码
Nov 20 #PHP
为PHP初学者的8点有效建议
Nov 20 #PHP
PHP程序员最常犯的11个MySQL错误小结
Nov 20 #PHP
Windows 下的 PHP-PEAR 安装方法
Nov 20 #PHP
整理的9个实用的PHP库简介和下载
Nov 09 #PHP
Notice: Undefined index: page in E:\PHP\test.php on line 14
Nov 02 #PHP
You might like
PHP_MySQL教程-第一天
2007/03/18 PHP
深入理解php的MySQL连接类
2013/06/07 PHP
[原创]PHP实现SQL语句格式化功能的方法
2017/07/28 PHP
自定义Laravel (monolog)日志位置,并增加请求ID的实现
2019/10/17 PHP
解决FLASH需要点击激活的代码
2006/12/20 Javascript
prettify 代码高亮着色器google出品
2010/12/28 Javascript
jquery 自定义容器下雨效果可将下雨图标改为其他
2014/04/23 Javascript
jquery的ajax异步请求接收返回json数据实例
2014/06/16 Javascript
jQuery调取jSon数据并展示的方法
2015/01/29 Javascript
JavaScript中的getTimezoneOffset()方法使用详解
2015/06/10 Javascript
简介AngularJS中使用factory和service的方法
2015/06/17 Javascript
盘点javascript 正则表达式中 中括号的【坑】
2016/03/16 Javascript
原生javascript实现的ajax异步封装功能示例
2016/11/03 Javascript
jquery组件WebUploader文件上传用法详解
2020/10/23 Javascript
微信小程序 input输入框控件详解及实例(多种示例)
2016/12/14 Javascript
express框架实现基于Websocket建立的简易聊天室
2017/08/10 Javascript
总结4个方面优化Vue项目
2019/02/11 Javascript
js实现for循环跳过undefined值示例
2019/07/02 Javascript
vue 通过绑定事件获取当前行的id操作
2020/07/27 Javascript
Python使用MySQLdb for Python操作数据库教程
2014/10/11 Python
python使用multiprocessing模块实现带回调函数的异步调用方法
2015/04/18 Python
Python实现将json文件中向量写入Excel的方法
2018/03/26 Python
使用NumPy和pandas对CSV文件进行写操作的实例
2018/06/14 Python
Python读取excel指定列生成指定sql脚本的方法
2018/11/28 Python
python存储16bit和32bit图像的实例
2018/12/05 Python
windows下安装Python虚拟环境virtualenvwrapper-win
2019/06/14 Python
Pytorch实现基于CharRNN的文本分类与生成示例
2020/01/08 Python
Python调用SMTP服务自动发送Email的实现步骤
2021/02/07 Python
基于HTML5 Canvas:字符串,路径,背景,图片的详解
2013/05/09 HTML / CSS
英国床垫和床架购物网站:Bedman
2019/11/04 全球购物
医学专业五年以上个人求职信
2013/12/03 职场文书
ktv总经理岗位职责
2014/02/17 职场文书
大学军训感言300字
2014/03/09 职场文书
工作检讨书怎么写
2014/10/10 职场文书
社区挂职锻炼个人工作总结
2015/10/23 职场文书
蓝牙耳机怎么连接电脑win11? Win11蓝牙耳机连接电脑的技巧
2023/01/09 数码科技