速度快的php分页函数,一个好用的分页函数

本人原创的代码,高手看来,也许流程笨拙点,但是很实用.看者要顶啊

/*---------------------------------------------------------------//

* 函数说明:分页函数 page($sql,$pagesize="30")

* $sql 查询语句(除limit外,可带排序或者条件限制)

* 如 select * from stu where time between "1" and "30";

* $pagesize 每页的显示条数

* ## 可输出数组$arr的值,说明如下:

*    $arr["first"]    首页及地址

*    $arr["page_pre"] 上一页及地址

*    $arr["all"]      当第几页和总页数

*    $arr["page_next"]下一页及地址

*    $arr["last"]     末页及地址

*    $arr["pagelist"] 页码列表及地址,显示当前页前后4页列表

*    $arr["query"]    语句 $arr["query"] = mysql_query($sql)

*    $arr["nums"]     记录总数

*                                 2006.09.06 by Kevin QQ:84529890

//----------------------------------------------------------------*/

function page($sql,$pagesize="30"){

global $arr,$PHP_SELF;

$query = mysql_query($sql);

$num = mysql_num_rows($query);

$pagecount = ceil($num/$pagesize);

$page = $_GET["page"];

if(!$page) $page=1;

if($page>$pagecount) $page = $pagecount;

$offset = ($page-1)*$pagesize;

$sql.=" limit $offset , $pagesize";

$arr["query"] = mysql_query($sql);

if($page>1){

$page_pre = $page-1;

$page_url = $PHP_SELF . "?page=".$page_pre;

$arr["page_pre"] = "上一页|\n";

}

if($page

$page_next = $page+1;

$page_url = $PHP_SELF . "?page=".$page_next;

$arr["page_next"] = "|下一页\n";

}

$arr["all"] = "".$page ."/". $pagecount . "页\n";

$arr["first"] = "首页\n|";

$arr["last"]  = "|末页\n";

$plfront="";

if($page<=5 && $page>=1){

for($i=1;$i<=9;$i++){

$plfront.= " ".$i."";

}

}elseif($page>5 && $page

for($i=$page-4;$i

$plfront.= " ".$i."";

}

}else{

for($i=$pagecount-8;$i<=$pagecount;$i++){

$plfront.= " ".$i."";

}

}

$arr["pagelist"] = $plfront." ";

$arr["nums"] = $num;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值