当前位置:编程学习 > php >>

两款实用php分页代码

分页的就是根据符合条件的总记录除上每页显示的记录就等页数,原理相当简单了公式为 $total = ceil($toalrecord / $perpagenum);

 

function outpege($ps教程,$page)
{
// $ps 累计信息数 $page 当前page数 $max 列表的最大数 $min 列表的最小值
$max      = ($page >= 5)? $page+5:10;
if($max > $ps)$max =$ps;
$min      =($page-5);
if($min<1) $min =1;
if($page>1)$pagelist = "<a href="?page=1">首页</a>";
for($i=$min;$i<=$max;$i++){
  $pagelist.= ($i!=$page)? "<a href="?page={$i}">{$i}</a>":"<a href="#">{$page}</a>";
}
$pagelist.= ($page>=$ps)?'':"<a href="?page={$ps}">尾页</a>";
return $pagelist;
}

分页代码二

// 分页, {总记录数,每页显示数,当前页,最多显示多少页,分页url}

function page($toalrecord, $perpagenum, $curpage, $url) {
        $total = ceil($toalrecord / $perpagenum);
        $pagearr = array_slice(range(1, $total), max(0, $curpage - ~~($perpagenum / 2)), $perpagenum);
        if($pagearr[0] != 1) {
                array_unshift($pagearr, sprintf("<a href='{$url}%s'><<</a>", $pagearr[0] - 1));
        }
        if($pagearr[count($pagearr)-1] != $total) {
                array_push($pagearr, sprintf("<a href='{$url}%s'>>></a>", $pagearr[count($pagearr)-1] + 1));
        }
        foreach ( $pagearr as $i => &$v ) {
                $v = is_numeric($v) ? "<a href='{$url}{$v}'>{$v}</a>" : $v;
        }
        return "<a href='{$url}'>首页</a>" . implode('', $pagearr) . "<a href='{$url}" . $total . "'>尾页</a>";
}

调用分页代码

page(99/*总记录*/, 9/*每页显示数*/, page/*当前页,从1开始*/, 'http://www.zzzyk.com/?page='/*url前缀*/);

补充:Php教程,Php常用代码 
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,