일반적인 상황에서는 페이징 등 데이터베이스에 대한 작업이 포함된 데이터베이스 읽기용 특수 클래스를 만들어 사용하기 편리하도록 하겠습니다. 코드에는 두 가지 주요 섹션이 있습니다.
1. 데이터베이스를 읽고 페이징 배열로 변환합니다. :
코드는 다음과 같습니다. : #🎜🎜 #
<?php private function rs2array($sql='',$filename='',$pagesize=0){//生成二维数组 $autopage=false; if (!isset($sql))die("未设置语句!"); $str=array(); $result = $this->Open_Db($sql); $this->recordcount=$result->recordcount; if ((isset($filename)) && ($pagesize!=0)){//分页开始 $autopage=true; $FilesName = $filename; $result->pagesize=$pagesize; $page=$_GET['page']; if (($page!='') && (is_numeric($page))){ $epage = $page; if ($epage<1)$epage=1; if ($epage>$result->pagecount)$epage = $result->pagecount; }else{ $epage=1; } if(!$result->eof)$result->Absolutepage=$epage; $whileNum=$result->pagesize; } if(!isset($whileNum))$whileNum=$result->recordcount; for($i=1;$i<=$whileNum;$i++){ if($result->eof)break; for($n=0;$n<=($result->fields->count-1);$n++){ $str[$i-1][$result[$n]->name] = $result[$n]->value; } $result->movenext(); } if($autopage==true)$this->page = $this->Paging($filename,$result->pagecount,$epage); $result->close(); return $str; } ?>
2. 호출을 위한 페이징 코드:
<?php static private function Paging($FilesName,$PageCount,$page){ $PageStr=""; $topname='第一页'; $bottomname='最末页'; $overname='上一页'; $upname='下一页'; $p=$FilesName.'page='; if ($PageCount>1){ if ($page<=1){ $page=1; $PageStr='当前第 '.$page.' / '.$PageCount.' 页 ['.$topname.'] ['.$overname.'] <a href="'.$p.($page+1).'">['.$upname.']</a> <a href="'.$p.($PageCount).'">['.$bottomname.']</a>'; }else if($page>=$PageCount){ $page=$PageCount; $PageStr='当前第 '.$page.' / '. $PageCount . ' 页 <a href="'.$p.(1).'">['.$topname.']</a> <a href="'.$p.($page-1).'">['.$overname.']</a> ['.$upname.'] ['.$bottomname.']'; }else{ $PageStr='当前第 ' . $page . ' / '. $PageCount . ' 页 <a href="'.$p.(1).'">['.$topname.']</a> <a href="'.$p.($page-1).'">['.$overname.']</a> <a href="'.$p.($page+1).'">['.$upname.']</a> <a href="'.$p.($PageCount).'">['.$bottomname.']</a>'; } }else{ $PageCount=1; $page=1; $PageStr=('当前第 ' . $page) . ' / '. $PageCount . ' 页 ['.$topname.'] ['.$overname.'] ['.$upname.'] ['.$bottomname.']'; } return $PageStr; } ?>이렇게 생각하면 기본적으로 그럴 필요는 없습니다. 데이터베이스를 읽을 때 페이징에 대해 걱정할 필요가 없습니다. 문제 없습니다. 웹 사이트 열이 여러 개인 경우 페이징을 호출할 수 있어 매우 편리합니다. 위 코드에 부족한 점을 지적해주세요. 감사합니다! PHP 관련 더 많은 질문은 PHP 중국어 웹사이트를 방문하세요:
위 내용은 편리하고 실용적인 두 단계로 PHP 페이징 기능을 신속하게 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!