【ThinkPHP】PHP实现分页功能

查询列表数据,需要用到分页功能,下面是分页功能的代码:

php 复制代码
 /**
     * Summary of userList
     * @return \think\response\Json
     */
    public function userList()
    {

        $page = input("page")?:1;//当前页数
        $size = input("size")?:10;//每页大小
        $start = ($page-1)*$size;//跳过的条数
        $total = 0;
        $pageTotal = 0;

        $userList = User::where([["deleted", "=", 0]])->order("id", "desc")->limit($start,$size)->select();
        $total = User::where([["deleted", "=", 0]])->order("id", "desc")->count();
        $pageTotal = ceil($total/$size);//计算总页数  ceil向上舍入为最接近的整数。

        return $this->success(["userList"=>$userList,"page"=>$page,"size"=>$size,"total"=>$total,"pageTotal"=>$pageTotal]);
    }

其中计算总页数时使用到来Math中的一个函数:ceil,作用是向上取最接近的整数,如:2.1 则取3。

floor():向下舍入为最接近的整数;

round():对浮点数进行四舍五入;

rand():返回随机整数。

相关推荐
天宁8 小时前
Workerman + ThinkPHP 8 结合使用
php·thinkphp
灰子学技术10 小时前
go response.Body.close()导致连接异常处理
开发语言·后端·golang
二十雨辰10 小时前
[python]-AI大模型
开发语言·人工智能·python
Doro再努力10 小时前
【Linux操作系统10】Makefile深度解析:从依赖推导到有效编译
android·linux·运维·服务器·编辑器·vim
Yvonne爱编码10 小时前
JAVA数据结构 DAY6-栈和队列
java·开发语言·数据结构·python
Re.不晚10 小时前
JAVA进阶之路——无奖问答挑战1
java·开发语言
Daniel李华10 小时前
echarts使用案例
android·javascript·echarts
你这个代码我看不懂10 小时前
@ConditionalOnProperty不直接使用松绑定规则
java·开发语言
pas13611 小时前
41-parse的实现原理&有限状态机
开发语言·前端·javascript
琹箐11 小时前
最大堆和最小堆 实现思路
java·开发语言·算法