首頁 >後端開發 >PHP問題 >php數組能分頁嗎

php數組能分頁嗎

(*-*)浩
(*-*)浩原創
2019-09-17 15:40:472220瀏覽

關於陣列的分頁函數,用陣列進行分頁的好處是可以方便的進行聯合多表格查詢,只需要將查詢的結果放在陣列中就可以了。

php數組能分頁嗎

以下是陣列分頁的函數,函數page_array用於陣列的分頁,函數show_array用於分頁函數的操作及顯示,需要搭配使用。兩個函數透過全域變數$countpage發生聯繫,此變數用於追蹤總頁碼數。 (推薦學習:PHP程式設計從入門到精通

<?php  
/** 
 * 数组分页函数  核心函数  array_slice 
 * 用此函数之前要先将数据库里面的所有数据按一定的顺序查询出来存入数组中 
 * $count   每页多少条数据 
 * $page   当前第几页 
 * $array   查询出来的所有数组 
 * order 0 - 不变     1- 反序 
 */   
  
function page_array($count,$page,$array,$order){  
    global $countpage; #定全局变量  
    $page=(empty($page))?&#39;1&#39;:$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[&#39;page&#39;])?1:$_GET[&#39;page&#39;];  
     if($page > 1){  
        $uppage=$page-1;  
  
     }else{  
        $uppage=1;  
     }  
  
     if($page < $countpage){  
        $nextpage=$page+1;  
  
     }else{  
            $nextpage=$countpage;  
     }  
         
        $str=&#39;<div style="border:1px; width:300px; height:30px; color:#9999CC">&#39;;  
    $str.="<span>共  {$countpage}  页 / 第 {$page} 页</span>";  
    $str.="<span><a href=&#39;$url?page=1&#39;>   首页  </a></span>";  
    $str.="<span><a href=&#39;$url?page={$uppage}&#39;> 上一页  </a></span>";  
    $str.="<span><a href=&#39;$url?page={$nextpage}&#39;>下一页  </a></span>";  
    $str.="<span><a href=&#39;$url?page={$countpage}&#39;>尾页  </a></span>";  
    $str.=&#39;</div>&#39;;  
    return $str;  
}  
?>

以上是php數組能分頁嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn