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,
        ];

目录
相关文章
|
2月前
|
消息中间件 移动开发 安全
阿里云号码认证服务怎么使用?新手入门短信认证指南教程
阿里云短信认证服务提供一键登录与验证码认证,免资质、签名和模板申请,通过API快速集成。支持多认证方式,自动优选方案,短信兜底,适用于各类应用登录注册场景,助力开发者高效验证用户身份。
|
网络协议 Linux 网络安全
php实现websocket实时消息推送
php实现websocket实时消息推送
731 0
php实现websocket实时消息推送
|
消息中间件 PHP 数据库
PHP使用topthink/think-queue消息队列实例
PHP使用topthink/think-queue消息队列实例
597 0
|
API PHP
PHP开发API接口签名生成及验证
PHP开发API接口签名生成及验证
672 0
|
XML 移动开发 JSON
PHP使用yansongda/pay实现支付宝和微信的支付
PHP使用yansongda/pay实现支付宝和微信的支付
1435 0
|
PHP 数据安全/隐私保护
phpmailer/phpmailer 邮件发送,163SMTP设置
phpmailer/phpmailer 邮件发送,163SMTP设置
374 0
|
JSON 应用服务中间件 程序员
如何对服务器做IP限流
如何对服务器做IP限流
604 0
|
PHP
PHP引入endroid/qr-code类库生成指定二维码
PHP引入endroid/qr-code类库生成指定二维码
567 0
|
JavaScript
js循环调用接口
js循环调用接口
495 0
|
SQL 关系型数据库 MySQL
mysql杂项
mysql杂项
215 0
mysql杂项