PHP分页查询

简介: PHP分页查询
public function getAdminOpLogListByPager(AdminOpLogListContext $context, $sys)
    {
        $op = Db::table('admin_op_log')
            ->where('sys', $sys);
        if ($context->admin_id_arr != [-1]) {
            $op = $op->whereIn('admin_id', $context->admin_id_arr);
        }
        if ($context->field) {
            if ($context->lifting == 1) {
                $op = $op->order($context->field . ' desc');
            } else {
                $op = $op->order($context->field . ' asc');
            }
        }
        //总共记录
        $total = $op->count();
        $list = $op->limit($context->page_count * ($context->page_no - 1), $context->page_count + 1)->select();
        $count = count($list);
        $hasMore = false;
        if ($count > (int)$context->page_count) {
            $hasMore = true;
            array_pop($list);
        }
        return [
            'data' => array_values($list),
            'total' => $total,
            'has_more' => $hasMore
        ];
    }
        //处理前端样式
        $data = $result['data'];
        //总共记录
        $total_count = $result['total'];
        //总页数
        $totalPage = ceil($totalCount / $context->page_count);
        $page_info = [
            'page_no' => (int)$context->page_no,
            'page_count' => (int)$context->page_count,
            'page_total' => $totalPage,
            'total' => $totalCount,
        ];
        return [
            'page_info' => $page_info,
            'list' => array_values($data)
        ];
        //总页数
        $totalPage = ceil($totalCount / $pageCount);
        return [
            'page_no' => (int)$pageNo,
            'page_count' => (int)$pageCount,
            'has_more' => $result['has_more'],
            'list' => array_values($data),
            'total' => $totalPage,
        ];

目录
相关文章
|
6月前
|
SQL PHP 数据库
|
8天前
|
关系型数据库 MySQL 数据库连接
13 PHP数据的获取
路老师在知乎上分享了PHP语言的知识,帮助大家入门和深入理解PHP。本文介绍了从结果集中获取一行数据作为对象(`mysqli_fetch_object()`)、获取一行作为枚举数组(`mysqli_fetch_row()`)、获取查询结果集中的记录数(`mysqli_num_rows()`)、释放内存(`mysqli_free_result()`)以及关闭数据库连接(`mysqli_close()`)的方法,并提供了具体示例代码。
22 3
|
8天前
|
前端开发 PHP
10 PHP结合bootstrap完成分页
路老师分享了如何使用PHP实现CSDN问答列表的分页功能。首先,通过编写 `index.php` 文件,定义数据和分页逻辑。接着,安装 Composer 并配置 PHP 包管理工具,以引入 `jasongrimes/paginator` 分页插件。最后,展示分页效果并确保代码路径正确。下篇将介绍 PHP 和 Web 页面的交互。
17 0
|
2月前
|
PHP 开发者
PHP中的魔法方法
本文将介绍PHP中的一些特殊方法,这些方法以双下划线(__)开头,被称为魔术方法或魔法方法。这些方法在特定情况下会自动调用,例如当尝试访问未定义的属性或调用未定义的方法时。本文将详细讲解几个常用的魔术方法,以及如何在实际应用中使用它们来增强PHP代码的可读性和健壮性。
27 0
|
4月前
|
PHP
php方法
【7月更文挑战第2天】php方法
27 0
|
6月前
|
开发框架 .NET PHP
【PHP入门】1.1-PHP初步语法
【PHP入门】1.1-PHP初步语法
|
PHP
【PHP】关于多个like条件的注意
【PHP】关于多个like条件的注意
84 0
【PHP】关于多个like条件的注意
|
机器学习/深度学习 Arthas 监控
Deliverer 1.0.8 支持 PHP5 了
因为是为了解决祖传代码的问题,也听到群友的一些声音,还是很有必要支持下 PHP5 的,所以这段时间一直在着力解决这个版本兼容问题,没想到问题比较我预计的要难很多。