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

相关推荐
啃火龙果的兔子29 分钟前
快速搭建Java服务指南
java·开发语言
未来之窗软件服务31 分钟前
智慧收银系统开发进销存库存统计,便利店、水果店、建材与家居行业的库存汇总管理—仙盟创梦IDE
java·开发语言·ide·进销存·仙盟创梦ide·东方仙盟·收银台
pusue_the_sun40 分钟前
从零开始搞定类和对象(上)
开发语言·c++
归云鹤1 小时前
QT信号和槽怎么传输自己定义的数据结构
开发语言·数据结构·qt
hjc_0420431 小时前
laravel下phpunit的使用
php·laravel
ytttr8731 小时前
MATLAB 实现 SRCNN 图像超分辨率重建
开发语言·matlab·超分辨率重建
稻草人不怕疼1 小时前
Android 15 全屏模式适配:A15TopView 自定义组件分享
android
静默的小猫1 小时前
LiveDataBus消息事件总线之二-(不含反射和hook)
android
饭碗的彼岸one1 小时前
重生之我在10天内卷赢C++ - DAY 1
linux·开发语言·c++·经验分享·笔记·学习方法
项目申报小狂人1 小时前
2025年1中科院1区顶刊SCI-投影迭代优化算法Projection Iterative Methods-附完整Matlab免费代码
开发语言·算法·matlab