標籤:
<?php/*p.cn joffe 2011.12.7分頁樹網創商城分頁方式支援檔案 需要樣式檔案支援調用方法:include("pagination.php");echo paginate_tree($reload, $pageNo, $tpages, $adjacents,[$trow]);參數:$adjacents:兩側顯示的頁碼數量.$pageNo:頁碼$tpage:最大頁數reload:點擊時候的地址:參考:$reload = $_SERVER[‘PHP_SELF‘] . "?" 不需要帶pageNo這個參數$trow 總記錄數 可選 為0則不輸出$unit 總記錄尾碼*/function paginate_tree($reload, $pageNo, $tpages, $adjacents ,$trow=0,$unit="條記錄") {$prevlabel = "‹ 上一頁";$nextlabel = "下一頁 ›";$out = "<div class=\"pagin\">\n";//總記錄數if($trow != 0){$out.= "共".$trow.$unit ."\n";}// 上一頁if($pageNo==1) {$out.= "<span>" . $prevlabel . "</span>\n";}elseif($pageNo==2) {$out.= "<a href=\"" . $reload . "\">" . $prevlabel . "</a>\n";}else {$out.= "<a href=\"" . $reload . "&pageNo=" . ($pageNo-1) . "\">" . $prevlabel . "</a>\n";}// firstif($pageNo>($adjacents+1)) {$out.= "<a href=\"" . $reload . "\">1</a>\n";}// intervalif($pageNo>($adjacents+2)) {$out.= "...\n";}// pages$pmin = ($pageNo>$adjacents) ? ($pageNo-$adjacents) : 1;$pmax = ($pageNo<($tpages-$adjacents)) ? ($pageNo+$adjacents) : $tpages;for($i=$pmin; $i<=$pmax; $i++) {if($i==$pageNo) {$out.= "<span class=\"current\">" . $i . "</span>\n";}elseif($i==1) {$out.= "<a href=\"" . $reload . "\">" . $i . "</a>\n";}else {$out.= "<a href=\"" . $reload . "&pageNo=" . $i . "\">" . $i . "</a>\n";}}// intervalif($pageNo<($tpages-$adjacents-1)) {$out.= "...\n";}// lastif($pageNo<($tpages-$adjacents)) {$out.= "<a href=\"" . $reload . "&pageNo=" . $tpages . "\">" . $tpages . "</a>\n";}// nextif($pageNo<$tpages) {$out.= "<a href=\"" . $reload . "&pageNo=" . ($pageNo+1) . "\">" . $nextlabel . "</a>\n";}else {$out.= "<span>" . $nextlabel . "</span>\n";}$out.= "</div>";return $out;}?>
帶省略符號的分頁演算法