thinkphp 3 分页

本文介绍了两种使用TP框架实现分页的方法。第一种方法通过自定义函数pages进行分页操作,涉及模型查询、分页类导入及数据查询等步骤;第二种方法同样自定义函数pages1实现分页,但采用了page方法简化查询过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第一种

/**
 * @title  tp 分页
 * @author lyj [author] [2018-06-22]
 * @param  [type]  $table [表名]
 * @param  [type]  $where [查询条件]
 * @param  [type]  $order [排序]
 * @param  integer $pnum  [每页数量]
 * @return [type]         [description]
 */
function pages($table,$where,$order,$pnum = 15)
{
    $model = M($table); 

    // 导入分页类
    import('ORG.Util.Page');

    // 查询满足要求的总记录数
    $count = $model->where($where)->count();

    // 实例化分页类 传入总记录数和每页显示的记录数
    $Page = new Page($count,$pnum);

    // 分页显示输出
    $show = $Page->show();

    // 进行分页数据查询 注意 limit 方法的参数要使用 Page 类的属性
    $list =
        $model->where($where)->order($order)->limit($Page->firstRow.','.$Page->listRows)->select();

    $res['list'] = $list;
    $res['page'] = $show; 

    return $res;
}

第二种

/**
 * @title  tp 分页
 * @author lyj [author] [2018-06-22]
 * @param  [type]  $table [表名]
 * @param  [type]  $where [查询条件]
 * @param  [type]  $order [排序]
 * @param  integer $p     [当前页]
 * @param  integer $pnum  [每页页数]
 * @return [type]         [description]
 */
function pages1($table, $where, $order, $p=1, $pnum = 15)
{
    $model = M($table);      
    $list  = $model->where($where)->order($order)->page($p.','.$pnum)->select(); 
    import("ORG.Util.Page");
    $count = $model->where($where)->count();
    $page  = new Page($count, $pnum);
    $show  = $page->show();
    $res['list'] = $list;
    $res['page'] = $show;

    return $res; 
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值