參加培訓的時候,教課的老師說這是他所見過的最簡單的分頁寫法。挺容易理解的,分享給大家
/**
*
*分頁類
* @param int $num 總頁數
* @param int $cnt 每頁顯示多少行數據
* @param int $curr 當前是第多少頁
*/
function fenye( $num,$cnt = 10,$curr = 1){ // 第一步:計算一共有多少頁,ceil函數是向上取整 $pages = ceil( $num / $cnt ); // 最左邊的頁碼,就是當前頁碼減去2,如果里要顯示7個頁碼,那就減去3,9個頁碼就減4,總之是頁碼的一半 // 我這例子是顯示5個頁碼 $left = max($curr -2,1); // 拿左邊的數來計算最右邊的頁碼數,比如最左邊是1,那么最右邊就是5,2就是6, $right = min( $left + 4,$pages ); // 再次計算左邊頁碼,這樣左右的頁碼就都准確了, $left = max( $right -4,1); $yema = array(); for ($i= $left; $i < $right+1; $i++) { $_GET['page'] = $i; $yema[$i] = http_build_query( $_GET ); } return $yema; }
另外附加上講一下http_build_query這個函數,能把數組單元用&符號拼接起來,很好用
如這樣一個例子:
$arr = array('page'=>'1','cat_id'=>'100'); echo http_build_query( $arr );
結果就是“page=1&cat_id=100”,所以用的時候只要在鏈接里加上"?"就可以拼湊出url,如<a href = "index.php?<?php echo這個函數的結果?>">
