$array=array("1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20");//規定要分頁的數組
$page= $_GET['page'];
$r = $this->page($array,5,$page);
print_r($r);
exit();
foreach($r["source"] as $s){
echo $s;
}
function page($array,$pagesize,$current){
$_return=array();
$total=ceil(Count($array)/$pagesize);//求總頁數
$prev=(($current-1)<=0 ? "1":($current-1));//確定上一頁,如果當前頁是第一頁,點擊顯示第一頁
$next=(($current+1)>=$total ? $total:$current+1);//確定下一頁,如果當前頁是最後一頁,點擊下頁顯示最後一頁
$current=($current>($total)?($total):$current);//當前頁如果大於總頁數,當前頁為最後一頁
$start=($current-1)*$pagesize;//分頁顯示時,應該從多少條信息開始讀取
for($i=$start;$i<($start+$pagesize);$i++){
array_push($_return,$array[$i]);//將該顯示的信息放入數組 $_return 中
}
$pagearray["source"]=$_return;
$pagearray["page"]="<a href=\"?page=1\">first</a> <a href=\"?page={$prev}
\">prev</a> <a href=\"?page={$next}\">next</a> <a href=\"?page={$total}\">end</a>";//分頁樣式可跟據需要調整
return $pagearray;
}
$listArr = array_slice($array, ($page-1)*$pagesize, $pagesize, true);
$page 為頁數
這種不建議使用php分頁,因為數據已經完整了,出於優化顯示效果的目的而分頁的話可以采用js方式。因為頁面跳轉需要讓訪問者等待較長的時間,所以不推薦這樣做。
通常的分頁都是將數據庫內容進行分頁,比如需要顯示100條,但是每次只顯示10條,這樣一個是展示起來較快,另一個主要的原因是減少數據庫端的壓力。
你這種可以簡單的分開放在多個div裡面,通過上一頁下一頁控制div的顯示和隱藏就行了。