程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> PHP基於數組實現的分頁函數實例

PHP基於數組實現的分頁函數實例

編輯:PHP綜合

分頁功能是PHP程序設計中非常常見的功能,不同於以往的,今天本文介紹的是PHP基於數組實現的分頁函數。

關於數組的分頁函數,用數組進行分頁的好處是可以方便的進行聯合多表查詢,只需要將查詢的結果放在數組中就可以了以下是數組分頁的函數,函數page_array用於數組的分頁,函數show_array用於分頁函數的操作及顯示,需要配合使用。兩個函數通過全局變量$countpage發生聯系,此變量用於跟蹤總頁碼數。

具體實例代碼如下:

<?php
/**
 * 數組分頁函數 核心函數 array_slice
 * 用此函數之前要先將數據庫裡面的所有數據按一定的順序查詢出來存入數組中
 * $count  每頁多少條數據
 * $page  當前第幾頁
 * $array  查詢出來的所有數組
 * order 0 - 不變   1- 反序
 */ 
function page_array($count,$page,$array,$order){
  global $countpage; #定全局變量
  $page=(empty($page))?'1':$page; #判斷當前頁面是否為空 如果為空就表示為第一頁面 
    $start=($page-1)*$count; #計算每次分頁的開始位置
  if($order==1){
   $array=array_reverse($array);
  }  
  $totals=count($array); 
  $countpage=ceil($totals/$count); #計算總頁面數
  $pagedata=array();
 $pagedata=array_slice($array,$start,$count);
  return $pagedata; #返回查詢數據
}
/**
 * 分頁及顯示函數
 * $countpage 全局變量,照寫
 * $url 當前url
 */
function show_array($countpage,$url){
   $page=empty($_GET['page'])?1:$_GET['page'];
 if($page > 1){
   $uppage=$page-1;
 }else{
  $uppage=1;
 }
 if($page < $countpage){
   $nextpage=$page+1;

 }else{
   $nextpage=$countpage;
 }
    $str='<div style="border:1px; width:300px; height:30px; color:#9999CC">';
 $str.="<span>共 {$countpage} 頁 / 第 {$page} 頁</span>";
 $str.="<span><a href='$url?page=1'>  首頁 </a></span>";
 $str.="<span><a href='$url?page={$uppage}'> 上一頁 </a></span>";
 $str.="<span><a href='$url?page={$nextpage}'>下一頁 </a></span>";
 $str.="<span><a href='$url?page={$countpage}'>尾頁 </a></span>";
 $str.='</div>';
 return $str;
}
?>

希望本文所述實例對大家的PHP程序設計能起到一定的借鑒作用。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved