php进行分页,php 实现分页

本文详细介绍了如何使用PHP实现数据库的分页功能,通过函数fenye()展示了一个实例,该函数根据SQL查询语句、页码和每页数量来获取指定页面的数据。在计算总页数时,运用了数学.ceil()函数确保即使数据不能被每页数量整除,也能得到正确的总页数。此外,还讨论了如何防止请求超出总页数的情况,确保了数据的正确性和安全性。
摘要由CSDN通过智能技术生成

//分页实现函数,传入sql语句,访问的页号(默认为1),以及页面大小(默认为10);返回包含总个数,每页条数,总页数,当前页数,当前页数数据列表的数组;

function fenye($sql,$page=1,$pageSize=10) {

$res = $this->mysql->getData($sql);//按条件从数据库中读取数据,返回二维数组,如果不是SAE,直接改成php原生的mysql调用,其他代码不变

$count = count($res);//得到符合条件的建议的总个数,count函数的作用是计算出数组的元素个数

$num_of_paginations = ceil($count/$pageSize);//计算出总页数,ceil函数的作用是求得不小于给定实数的最小整数

if($page > $num_of_paginations){

return false; //申请的页号大于总页数,返回FALSE

}else{

$start = ($page-1)*$pageSize;//分页第一条元素的索引,也就是分段开始的地方

$list = array_slice($res,$start,$pageSize);//获取该分页的所有数据。array_splice函数的作用是从数组中取出一段

$arr = array(

"count" => $count, //总个数

"pageSize" => $pageSize, //每页条数

"pageCount" => $num_of_paginations, //总页数

"thisPage" => $page, //当前页数

"list" => $list //当前页面数据列表

);

return $arr;

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值