- 192浏览
- 2022-05-04
TP5中的分页功能可以通过使用TP5内置的paginate方法来实现,以下是一个分页接口的示例:
public function index()
{
// 获取当前页码,默认为1
$page = input('param.page/d', 1);
// 每页显示的记录数
$pageSize = input('param.pageSize/d', 10);
// 查询条件
$where = [];
// 排序条件
$order = ['id' => 'desc'];
// 获取数据总数
$totalCount = Db::name('user')->where($where)->count();
// 获取分页数据
$users = Db::name('user')
->where($where)
->order($order)
->paginate($pageSize, $totalCount, ['page' => $page]);
// 返回分页数据
return json([
'code' => 0,
'msg' => 'success',
'data' => [
'list' => $users->items(),
'total' => $users->total(),
'currentPage' => $users->currentPage(),
'lastPage' => $users->lastPage(),
'pageSize' => $users->listRows(),
]
]);
}
在以上示例中,我们通过paginate方法获取分页数据,paginate方法的第一个参数是每页显示的记录数,第二个参数是数据总数,第三个参数是当前页码,paginate方法返回一个Paginator对象,我们可以通过Paginator对象的items方法获取当前页的数据,通过total方法获取数据总数,通过currentPage方法获取当前页码,通过lastPage方法获取最后一页的页码,通过listRows方法获取每页显示的记录数。在实际应用中,我们需要根据具体的业务需求灵活设置查询条件和排序条件,同时可以通过URL传递参数来控制分页功能。
版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、本文由会员转载自互联网,如果您是文章原创作者,请联系本站注明您的版权信息。