两步快速实现PHP分页功能,方便实用

【虚拟资源买卖网www.cnused.com】源码虚拟资源交易平台,免费开通VIP商户!
吆喝资源网官方客服QQ:787749153官方唯一QQ号码
文字广告位招租      好位置不等人!200元/月

一般情况下我都会把数据库读取做一个专用类,里面包括有对数据库的操作,包括分页等,这样用起来方便。主要的代码有两段:

一、读取数据库并转化为分页数组

代码如下:

<?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; }
?>

二、供调用的分页代码

<?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中文网:https://www.php.cn/

以上就是两步快速实现PHP分页功能,方便实用的详细内容,更多请关注吆喝资源网其它相关文章!

本文转自PHP中文网,吆喝网(http://yaoohe.com)搜集整理,如有疑问请联系本站客服!

本文由 吆喝资源网 作者:shijian 发表,其版权均为 吆喝资源网 所有,文章内容系作者个人观点,不代表 吆喝资源网 对观点赞同或支持。如需转载,请注明文章来源。

0

发表评论