当前位置: 首页 > 图文教程 > 网络编程 > PHP > php 分页函数multi() discuz

PHP
PHP6 安装方法
PHP中的ob_start用法详解
学习php遇到的主要问题及解决办法
PHP知识:正则表达式中特殊字符的说明
PHP系列教程:《PHP设计模式介绍》 导言
PHP系列教程:设计模式介绍Ⅰ编程惯用法
PHP系列教程:设计模式介绍Ⅱ值对象模式
PHP系列教程:设计模式介绍Ⅲ工厂模式
PHP系列教程:设计模式介绍Ⅳ单件模式
PHP系列教程:设计模式介绍Ⅴ注册模式
PHP系列教程:设计模式介绍Ⅵ伪对象模式
PHP系列教程:设计模式介绍Ⅶ策略模式
PHP系列教程:设计模式介绍Ⅷ迭代器模式
PHP系列教程:设计模式介绍Ⅸ观测模式
PHP系列教程:设计模式介绍Ⅸ规范模式
PHP教程:自动适应范围的页码分页程序
SQL函数:CONCAT_WS和LENGTH
PHP:招PHP高级工程师的面试题
美化/etc/my.cnf文件
PHP注释查看器

PHP 中的 php 分页函数multi() discuz


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 68 ::
收藏到网摘: n/a

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;
}