用PHP写的一个分页函数程序
因为分页程序要常用到,以前也封装过,不过都没怎么认真的封装过,这个算是用了点时间吧,很简单的一个小程序!

<?php
/* author:meiking?0?2 05,06,01
* $fileName 是当前调用此程序的文件名
* $page 为当前页数
* $pageSize 为每一页显示记录的条数
* $itemTotalNum 为记录的总数
* 剩下的变量为参数的名称和参数的值,现在此函数最多支持两个参数
*/

function pageList($fileName, $page, $pageSize, $itemTotalNum
,$par_1_name = NULL, $par_1_val = NULL
,$par_2_name = NULL, $par_2_val = NULL) {

$pageNum = ceil($itemTotalNum/$pageSize);
//得到记录的总页数
if($pageNum == 1) return
""; //如果数量不够分页则返回NULL

$url = $fileName.
"?p=";
$urlVal =
"&".$par_1_name."=".$par_1_val."&".$par_2_name."=".$par_2_val;

$firstPage = ($page <= 1)?
"首页":"<a href=".$url."1".$urlVal.">首页</a>";
$endPage = ($page >= $pageNum)?
"末页":"<a href=".$url.$pageNum.$urlVal.">末页</a>";
$prePage = ($page <= 1)?
"上一页":"<a href=".$url.($page-1).$urlVal.">上一页</a>";
$nextPage = ($page >= $pageNum)?
"下一页":"<a href=".$url.($page+1).$urlVal.">下一页</a>";

$numPage =
""; //按数字显示
for($i = ($page-3);$i <= $page+3;$i++) {
if($i < 1 || $i > $pageNum) continue;
if($i == $page) $numPage.=
"&nbsp;<b><font color=red>".$i."</font></b>&nbsp;";
else $numPage.=
"&nbsp;<b><a href=".$url.$i.$urlVal.">".$i."</a></b>&nbsp;";
}


return $firstPage.
"&nbsp;".$prePage."&nbsp;".$numPage."&nbsp;".$nextPage."&nbsp;".$endPage;
}

?>
meiking   2005-06-02 09:37:43 评论:1   阅读:1602   引用:0
无题 @2005-06-03 09:00:45  meiking
其实可以把参数的值和参数的名称存到一个数组里,然后 foreach 出来!

发表评论>>

署名发表(评论可管理,不必输入下面的姓名)

姓名:

主题:

内容: 最少15个,最长1000个字符

验证码: (如不清楚,请刷新)

谢智的个人博客 @CSS by self