php 分页函数multi() discuz

2015-01-24信息快讯网

discuz摘出来的php分页函数multi(),大家以后也可以从discuz来获取各种比较好的函数了,学习要注意借鉴。

/* 
* 分页函数 
* $num 总条数,$perpage 一页多少条, $curpage 当前页, $mpurl url, $page = 10 显示几个分页 
* 
*/ 
function multi($num, $perpage, $curpage, $mpurl, $page = 10) { 
$multipage = ''; 
$realpages = 1; 
if ($num > $perpage){ 
$offset = 4; 
$realpages = @ceil($num / $perpage); 
if ($page > $realpages) { 
$form = 1; 
$to = $realpages; 
}else { 
$form = $curpage - $offset; 
$to = $form + $page - 1; 
if ($form < 1) { 
$form = 1; 
//$to = $curpage + 1 - $form; 
if ($to - $form < $page) { 
$to = $page; 
} 
} 
} 

$multipage = ($curpage > 1 ? '<a href="'.$mpurl.'page='.($curpage - 1).'">up</a> ' : ''); 
for ($i = $form; $i <= $to; $i++) { 
$multipage .= $i == $curpage ? '<strong>'.$i.'</strong> ' : 
'<a href="'.$mpurl.'page='.$i.'">'.$i.'</a> '; 
} 
$multipage .= $curpage < $realpages ? '<a href="'.$mpurl.'page='.($curpage + 1).'">next</a> ' : ''; 
$multipage = $multipage ? '<div class="pages">'.$multipage.'</div>' : ''; 
} 

return $multipage; 
}
©2014-2024 dbsqp.com