仿淘宝写的一个php分页函数

function formatPage($total, $page,  $pageSize){

    $str = '';
    $u = '?';
    foreach($_GET as $key=>$val){
        if($key!='page') $u.=$key.'='.$val.'&';
    }
    $url = 'http://'.$_SERVER["HTTP_HOST"].$_SERVER["SCRIPT_NAME"].$u;
    if($page>1){
        $str = '<li><a href="'.$url.'page=1"><span>上一页</span></a></li>';
    }else{
        $str = '<li class="first"><span>上一页</span></li>';
    }
    $endPage = ceil($total/$pageSize);

    $temp = array();
    if($endPage>5){
        $temp[1] = 1;
        $temp[2] = 2;
        //$temp[3] = 3;
        //$temp[4] = 4;
    }
    if($page>7) $temp[3] = "...";
    for($i=1;$i<=$endPage;$i++){
        if($i>$page-5 && $i<$page+5){
            $temp[$i] = $i;
        }
    }
    if(!isset($temp[$endPage-2]) && $endPage>5) $temp[$endPage-2] = "...";

    if($endPage>5){
        $temp[$endPage-1] = $endPage-1;
        $temp[$endPage] = $endPage;
    }

    foreach($temp as $key=>$i){
        if($i==$page){
            $str.= '<li class="current">'.$i.'</li>';
        }else{
            if($i=='...'){
                $str.="<li style=\"border:0px;\">...</li>";
            }else{
                $str.= '<li><a href="'.$url.'page='.$i.'"> '.$i.' </a></li>';
            }

        }

    }
    if($page<$endPage){
        $str.= '<li><a href="'.$url.'page='.($page+1).'"> <span>下一页</span> </a></li>';
    }else{
        $str.= '<li class="last">下一页</li>';
    }
    return $str;

}


转载于:https://my.oschina.net/ahuaahua/blog/16897

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值