php 分页函数multi() discuz
时间:2021-07-01 10:21:17
帮助过:33人阅读
代码如下:
/*
* 分页函数
* $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;
}