php 实现分页

分页实现,网上代码很多,不过以下是我整理优化后的在SAE上的代码实现。
就不再仔细解说了,注释写得很清楚

 
 
//分页实现函数,传入sql语句,访问的页号(默认为1),以及页面大小(默认为10);返回包含总个数,每页条数,总页数,当前页数,当前页数数据列表的数组;
function fenye($sql,$page=1,$pageSize=10) {
<span style="white-space:pre">	</span>$res = $this->mysql->getData($sql);//按条件从数据库中读取数据,返回二维数组,如果不是SAE,直接改成php原生的mysql调用,其他代码不变
  <span style="white-space:pre">	</span>$count = count($res);//得到符合条件的建议的总个数,count函数的作用是计算出数组的元素个数
 <span style="white-space:pre">	</span>$num_of_paginations = ceil($count/$pageSize);//计算出总页数,ceil函数的作用是求得不小于给定实数的最小整数
  <span style="white-space:pre">	</span>if($page > $num_of_paginations){  
       <span style="white-space:pre">		</span>return false; //申请的页号大于总页数,返回FALSE
  <span style="white-space:pre">	</span>}else{
  <span style="white-space:pre">		</span>$start = ($page-1)*$pageSize;//分页第一条元素的索引,也就是分段开始的地方
  <span style="white-space:pre">		</span>$list = array_slice($res,$start,$pageSize);//获取该分页的所有数据。array_splice函数的作用是从数组中取出一段
   <span style="white-space:pre">		</span>$arr = array(
    <span style="white-space:pre">			</span>"count" => $count,      //总个数
   <span style="white-space:pre">			</span> "pageSize" => $pageSize,    //每页条数
    <span style="white-space:pre">			</span>"pageCount" => $num_of_paginations,    //总页数
    <span style="white-space:pre">			</span>"thisPage" => $page,       //当前页数
    <span style="white-space:pre">			</span>"list" => $list         //当前页面数据列表
  <span style="white-space:pre">		</span> );
  <span style="white-space:pre">		</span> return $arr;
  <span style="white-space:pre">	</span>}
}


 
 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值