페이징 함수는 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 프로그래밍 설계에 참고 자료가 될 수 있기를 바랍니다.