<style type="text/css">
#list_page {width:100%;text-align:center;margin-top:15px;}
#list_page a {display:inline-block;text-decoration:none;color:#666;padding:10px 12px; margin-left:3px;background:#eee;}
#list_page a:hover,#list_page .pageOn {background:#189ad8;color:#fff;}
</style>
<?php
$page_url='?page=';
$pageSize=2;
$page=$_GET['page']?intval($_GET['page']):1;
$start=($page-1)*$pageSize;
//下面二项,不可缺失,一个是分页总数,一个查询数据库,根据实际情况修改
// $pagecount=ceil($db->num_rows()/$pageSize);
// $db->query($query.' limit '.$start.','.$pageSize);
?>
<div id="list_page" style="margin-bottom:13px;">
<?php
if($pagecount>1){
$page=intval($page?$page:1);$page_url=$page_url?$page_url:'?';
if($page>4) {
if($page>=$pagecount){if($pagecount<6) {$starti=1;}else {$starti=$pagecount-3;}$endi=$pagecount;$page=$pagecount;}
else{if($pagecount-$page<=2){$starti=$pagecount-3;$endi=$pagecount;}else {$starti=$page-1;$endi=$page+1;}}
}
else {$starti=1;if($pagecount>5) {$endi=5;}else {$endi=$pagecount;}if(!$page) {$page=1;}}
$restr='';
if($page!=1){if($page>5) {$restr.='<a href="'.$page_url.'1">1</a><a href="###">...</a>';}$restr.='<a title="上一页" href="'.$page_url.($page-1).'">上一页</a>';}
for($pi=$starti;$pi<=$endi;$pi++){
$restr.='<a title="第'.$pi.'页" href="'.((($pi==1 && $page==1) || ($pi==$pagecount && $page==$pagecount))?'###':($page_url.$pi)).'"'.($pi==$page?" class='pageOn'":'').'>'.$pi.'</a>';
}
if($pagecount-$page>2){$restr.='<a href="###">...</a><a title="最后一页" href="'.$page_url.$pagecount.'">'.$pagecount.'</a>';}
if($page!=$pagecount && $page<$pagecount){$restr.='<a title="下一页" href="'.$page_url.($page+1).'">下一页</a>';}
echo $restr;
}
?>
</div>