我的PHP分页函数

<?php

function show_pager($records,$perpage=20,$style='num',$pergap=10)
{
if($records<=$perpage) return;
$QUERY_STRING=preg_replace('/(&?)page/=[^&]*/', '', $_SERVER['QUERY_STRING']);
$QUERY_STRING .= '&amp;page=';
$QUERY_STRING = preg_replace('/^&(amp;)?/', '', $QUERY_STRING);
if(isset($_GET['page'])) $page = $_GET['page'];
else $page=1;
$total_page=ceil($records/$perpage);
$baseurl='?'.$QUERY_STRING;
$pagebar='';

if($style=='num')
{
$pagebar="/n".'<span class="pagerbar">'."/n";

$start=$page-$pergap/2;
if($start<1) $start=1;
$end=$start+$pergap;
if($end>$total_page)
{
$end=$total_page;
$start=$total_page-$pergap;
if($start<1) $start=1;
}
if($start>1)
{
$prev_pag=$start-$pergap/2;
if($prev_pag<1) $prev_pag=1;
$pagebar.='[<a class="pager" href="'.$baseurl.'1" title="Jump to first page">|<</a>]'."/n";
$pagebar.='[<a class="pager" href="'.$baseurl.$prev_pag.'" title="Go to prev gap"><<</a>]'."/n";
}
for ($i = $start; $i <= $end; $i++)
{
if($i!=$page)
$pagebar .= '[<a class="pager" href="'.$baseurl.$i.' " title="Go to page '.$i.'">'.$i.'</a>]'."/n";
else $pagebar .= '[<span class="alert">'.$i.'</span>]'."/n";
}
if($end<$total_page)
{
$next_gap=$end+$pergap/2;
if($next_gap>$total_page) $next_gap=$total_page;
$pagebar.='[<a class="pager" href="'.$baseurl.$next_gap.'" title="Go to next gap">>></a>]'."/n";
$pagebar.='[<a class="pager" href="'.$baseurl.$total_page.'" title="Jump to last page">>|</a>]'."/n";
}
$pagebar.="</span>/n";
}
else
{
$pagebar="/n".'<span class="pagebar"> |'."/n";
if($page != 1)
$pagebar.=' <a class="pager" href="'.$baseurl.'1">First</a> |'."/n";
if($page > 2)
$pagebar.=' <a class="pager" href="'.$baseurl.($page-1).'">Prev</a> |'."/n";
if($page < $total_page-1)
$pagebar.=' <a class="pager" href="'.$baseurl.($page+1).'">Next</a> |'."/n";
if($page != $total_page)
$pagebar.=' <a class="pager" href="'.$baseurl.$total_page.'">Last</a> |'."/n";
$pagebar.="</span>/n";

$pagebar.='<select class="pager" οnchange="self.location=/''.$baseurl.'/'+this.value">'."/n";
for ($i = 1; $i <= $total_page; $i++)
{
$pagebar.=' <option value="'.$i.'"';
if($page==$i) $pagebar.=' selected="selected"';
$pagebar.='>'.$i.'</option>'."/n";
}
$pagebar.="</select>/n";
}

return $pagebar;
}


?>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值