【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():返回随机整数。

相关推荐
Code_流苏6 分钟前
C++课设:简易日历程序(支持传统节假日 + 二十四节气 + 个人纪念日管理)
开发语言·c++·stl容器·课设·期末大作业·日历程序·面向对象设计
林林要一直努力17 分钟前
Android Studio 向模拟器手机添加照片、视频、音乐
android·智能手机·android studio
AD钙奶-lalala18 分钟前
Mac版本Android Studio配置LeetCode插件
android·ide·android studio
道剑剑非道33 分钟前
QT开发技术【ffmpeg + QAudioOutput】音乐播放器 完善
开发语言·qt·ffmpeg
武昌库里写JAVA34 分钟前
iview Switch Tabs TabPane 使用提示Maximum call stack size exceeded堆栈溢出
java·开发语言·spring boot·学习·课程设计
lexiangqicheng1 小时前
JS-- for...in和for...of
开发语言·前端·javascript
我是老孙1 小时前
windows10 php报错
开发语言·php
y102121041 小时前
Python训练营打卡Day42
开发语言·javascript·ecmascript
2301_805054561 小时前
Python训练营打卡Day46(2025.6.6)
开发语言·python
曹勖之2 小时前
撰写脚本,通过发布/joint_states话题改变机器人在Rviz中的关节角度
开发语言·python·机器人·ros2