php 分页函数multi() discuz
更新时间:2009年06月21日 18:52:42 作者:
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;
}
相关文章
Zend Framework教程之Loader以及PluginLoader用法详解
这篇文章主要介绍了Zend Framework教程之Loader以及PluginLoader用法,结合实例形式详细分析了Zend Framework自动加载机制的原理,使用方法与相关注意事项,需要的朋友可以参考下2016-03-03
Laravel学习笔记之Artisan命令生成自定义模板的方法
这篇文章主要介绍了Laravel学习笔记之Artisan命令生成自定义模板的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2018-11-11
浅析PHP关键词替换的类(避免重复替换,保留与还原原始链接)
一个关键词替换的类,这个类主要用于关键词过滤,或者是关键词查找替换方面,关键词替换,其实就是一个str_replace()的过程,感兴趣的朋友跟着小编一起看看吧2015-09-09
仿dedecms下拉分页样式修改的thinkphp分页类实例
这篇文章主要介绍了仿dedecms下拉分页样式修改的thinkphp分页类,可实现类似dedecms下拉分页样式的效果,需要的朋友可以参考下2014-10-10
让CodeIgniter的ellipsize()支持中文截断的方法
CodeIgniter的Text Helper有一个ellipsize()方法,用来过滤HTML标签并且截断文字十分好用。但是它对中文支持的特别不好,在中文中使用就有乱码出现。这篇文章主要介绍了让CodeIgniter的ellipsize()支持中文截断的方法,需要的朋友可以参考下2014-06-06


最新评论