PHP實現仿Google分頁效果的分頁函式

2022-06-21 10:18:10 字數 1812 閱讀 5511

/*

* * 分頁函式

* @param int $total 總頁數

* @param int $pagesize 每頁幾條

* @param string $pkey url中頁面變數名稱

* @param string $url 基礎url,其中的會被替換為頁碼

* 依賴函式 request_uri httpint */

當前頁超範圍置為1

$body='';$prefix='';$subfix='';

$start=$curpage-($a_num-1)/2;//

開始頁$end=$curpage+($a_num-1)/2; //

結束頁$start=$start

<=0?1:$start; //

開始頁超範圍修正

$end=$end>$pages?$pages:$end;//

結束頁超範圍修正

if($pages>=$a_num)//

當前頁在左半邊補右邊

if($end-$curpage

<=($a_num-1)/2)//

當前頁在右半邊補左邊}

for($i=$start;$i

<=$end;$i++)

else

',$i,$url).'"> '.$i.' ';

}}

$prefix=($curpage==1?'':'str_replace('',1,$url).'">'.$first.'

str_replace('',$curpage-1,$url).'">'.$pre.'');

$subfix=($curpage==$pages?'':'str_replace('',$curpage+1,$url).'">'.$next.'

str_replace('',$pages,$url).'">'.$last.'');

$info=" 第/頁 ";

$go='轉到';

return

$prefix.$body.$subfix.$info.$go;}

/*** 說明:獲取 _server['request_uri'] 值的通用解決方案 */

function

request_uri()

else

else

} return

$uri;}

/*** 獲取http傳遞的整數

* @param string $key 引數名稱

* @param bool $ispost 採取post傳遞方式,預設為真

* @return 整數,非法時預設為 $default */

仿google分頁例項

總記錄數 每頁記錄數 當前頁數 url引數 返回乙個帶html 的分頁樣式 字串 private string pagination int total,int per,int page,string query string 計算總頁數 if per 0 next page 1 pre page ...

PHP實現分頁

分頁思路 pagenow顯示第幾頁,由使用者輸入 rowcount總記錄數,從資料庫獲取 pagesize每頁顯示記錄數,由程式設計師定義 pagecount總頁數,用演算法實現 例如 pagenow 1 rowcount 7 pagesize 3 pagecount ceil rowcount p...

php實現分頁

indexcontroller.class.php檔案可以實現分頁效果 可以根據實際需要進行修改 header content type text html charset utf 8 定義最終的分頁類 final class pager 獲取鏈結位址 private function geturl...