php分页函数分页数据,PHP 分页函数

class page{

/**

* 分页

* @param int $total 总数

* @param int $num 每页显示数

* @param int $curpage 当前页码

* @param string $mpurl URL

* @param string $ajax ajax

* @param int $maxpages 最大

* @param int $page 显示分页数

* @param string $autogoto

* @param string $simple

* @return string

*/

public function multiPage($total, $num, $curpage, $mpurl, $ajaxFun = '', $maxpages = 0, $page = 10, $autogoto = FALSE, $simple = FALSE) {

$shownum = $showkbd = TRUE;

$lang['prev'] = '‹‹';

$lang['next'] = '››';

$ajaxtarget = '';

$multipage = '';

$mpurl = current(explode('&page', $mpurl));

$mpurl .= strpos($mpurl, '?') ? '&' : '?';

if ($ajaxFun) {

$mpurl;

}

$realpages = 1;

$curpage = $curpage ? $curpage : 1;

if($total > $num) {

$offset = 2;

$realpages = @ceil($total / $num);

$pages = $maxpages && $maxpages < $realpages ? $maxpages : $realpages;

if($page > $pages) {

$from = 1;

$to = $pages;

} else {

$from = $curpage - $offset;

$to = $from + $page - 1;

if($from < 1) {

$to = $curpage + 1 - $from;

$from = 1;

if($to - $from < $page) {

$to = $page;

}

} elseif($to > $pages) {

$from = $pages - $page + 1;

$to = $pages;

}

}

$multipage = ($curpage - $offset > 1 && $pages > $page ? 'multiPageUrl($mpurl.'page=1', $ajaxFun) .' class="first"'.$ajaxtarget.'>1 ...' : '').

($curpage > 1 && !$simple ? 'multiPageUrl($mpurl.'page='.($curpage - 1), $ajaxFun) .' class="prev"'.$ajaxtarget.'>'.$lang['prev'].'' : '');

for($i = $from; $i <= $to; $i++) {

$multipage .= $i == $curpage ? ''.$i.'' :

' multiPageUrl($mpurl.'page='.$i, $ajaxFun) . $ajaxtarget.'>'.$i.' ';

}

$multipage .= ($to < $pages ? ' multiPageUrl($mpurl.'page='.$pages, $ajaxFun) .' class="last"'.$ajaxtarget.'>... '.$realpages.' ' : '').

($curpage < $pages && !$simple ? ' multiPageUrl($mpurl.'page='.($curpage + 1), $ajaxFun) .'class="next"'.$ajaxtarget.'>'.$lang['next'].' ' : '').

($showkbd && !$simple && $pages > $page && !$ajaxtarget && $autogoto ? '' : '');

$multipage = $multipage ? '

'.' Total '.$total.'  '.$multipage.'
' : '';

}

$maxpage = $realpages;

return $multipage;

}

public function multiPageUrl($s, $fun){

if ($fun) {

$str = 'href = "javascript:;" οnclick="'.$fun.'(\''.$s.'\')" ';

}else{

$str = 'href = "'.$s.'" ';

}

return $str;

}

public function css(){

$s = '.pages {height: 50px; padding-top: 20px; clear: both;}

.pages A,.pages strong{ background-color: #0A4B99; margin-left: 10px; border: 1px solid #818181; color: #FFFFFF; display: block; float: left; height: 20px; padding: 5px 13px 2px 12px; width: auto;}

.pages A:HOVER{background-color: #72B3FF}

.pages strong{background-color: #fff; color: #000;}

.pages span{float: left; padding: 5px 0 2px 12px; color:#0A4B99;font-weight: bold; font-size: 15px;}

.pages strong{border: 1px solid #0A4B99;}

.next, .prev{font-size: 25px; line-height: 11px;color: yellow !important;}';

return $s;

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值