PHP基於數組實現的分頁函數執行個體_php技巧

來源:互聯網
上載者:User

分頁功能是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程式設計能起到一定的借鑒作用。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.