一个简单好用的Php自用分页函数,有需要使用分页函数又不想手写的朋友可进入参考,代码如下:
-
-
-
-
-
-
-
-
-
-
-
-
-
function front_page( $page_array ){
-
-
-
$lastpage = ceil($page_array['total'] / $page_array['dispage']);
-
$page_array['now_page'] = min( $lastpage , $page_array['now_page'] );
-
$prepage = $page_array['now_page'] - 1;
-
$nextpage = ($page_array['now_page'] == $lastpage ? 0 : $page_array['now_page'] + 1 );
-
$firstcount = ($page_array['now_page']-1) * $page_array['dispage'];
-
if( $lastpage <= 1) return false;
-
-
-
if($prepage){
-
$page_array[]="<a href='{$page_array['url']}"."1/'>首页</a>";
-
}else{
-
$page_array[]="<span class=\"nolink\">首页</span>";
-
}
-
-
if($prepage) {
-
$page_array[]="<a href='{$page_array['url']}$prepage/'> 上一页 </a> ";
-
}else{
-
$page_array[]='';
-
}
-
-
-
$pagenum=5;
-
$offset=2;
-
$from=$page_array['now_page'] - $offset;
-
$to=$page_array['now_page'] + $pagenum-$offset-1;
-
if($pagenum>$lastpage){
-
$from=1;
-
$to=$lastpage;
-
}else{
-
if($from<1){
-
$to=$page_array['now_page'] + 1 - $from;
-
$from=1;
-
if(($to-$from)<$pagenum && ($to-$from)<$lastpage){
-
$to=$pagenum;
-
}
-
}elseif($to>$lastpage){
-
$from=$page_array['now_page'] - $lastpage+$to;
-
$to=$lastpage;
-
if(($to-$from)<$pagenum && ($to-$from)<$lastpage){
-
$from=$lastpage-$pagenum+1;
-
}
-
}
-
}
-
for($i=$from;$i<=$to;$i++){
-
if($i == $page_array['now_page']){
-
$pagenav.="<a href=\"#\" title=\"\">$i</a> ";
-
}else{
-
$pagenav.="<a href=\"{$page_array['url']}$i/\" title=\"\">$i</a> ";
-
-
}
-
}
-
-
$page_array[]= $pagenav;
-
-
if($nextpage){
-
$page_array[]="<a href='{$page_array['url']}"."$nextpage/'> 下一页 </a> ";
-
}else {
-
$page_array[]='';
-
}
-
-
if($nextpage){
-
$page_array[]="<a href='{$page_array['url']}"."$lastpage/'>尾页</a>";
-
}else{
-
$page_array[]='<span class="nolink">尾页</span>';
-
}
-
-
$page_array[]="<span>每页 ".$page_array['dispage']." 条</span> <span>共 ".$page_array['total']." 条纪录</span>";
-
-
$page_array[]="共 ".$lastpage." 页";
-
-
-
$page_array[] = '<span>跳转到:</span><input size="4" id="pagenu" type="text" onkeydown="javascript:if(event.keyCode==13){var page=(this.value<0)?1:this.value;location=\''.$page_array['url'].'\'+page;}" />
-
<a href="javascript:void(0)" onclick="javascript:var spage=(window.document.getElementById(\'pagenu\').value==\'\')?1:window.document.getElementById(\'pagenu\').value;location=\''.$page_array['url'].'\'+spage;">Go</a>';
-
-
$firstcount=$firstcount < 1 ? 0 : $firstcount;
-
return array('pagenav'=>$page_array,'limit'=>$firstcount,'offset'=> $page_array['dispage'],'allpage'=>$lastpage);
-
}