Thinkphp 6.0分页功能

本节课我们来学习一下系统提供的分页方法,如何使用这个方法进行分页。

一.分页功能

1. 不管是数据库操作还是模型操作,都使用 paginate() 方法来实现;
//查找 user 表所有数据,每页显示 5 条
return View::fetch('index', [
'list' => User::paginate(5)
]);

2. 创建一个静态模版页面,并使用 {volist} 标签遍历列表;

{volist name='list' id='user'}

{/volist}
编号 姓名 性别 邮箱 价格
{$user.id} {$user.username} {$user.gender} {$user.email} {$user.price}

3. 分页功能还提供了一个固定方式,实现分页按钮,只需要设置相应的 CSS 即可;
{$list|raw}
    .pagination { list-style: none; margin: 0; padding: 0; } .pagination li { display: inline-block; padding: 20px; }

4. 我们可以通过数组来传递多个参数,具体分页参数如下:
$list = User::paginate([
'list_rows' => 4,
'var_page' => 'page',
]);

5. 也可以单独赋值分页的模版变量;
// 获取分页显示
$page = $list->render();
{$page|raw}

6. 也可以单独获取到总记录数量;
$total = $list->total();

7. 如果你使用模型方式分页,则可以通过获取器修改字段值,而分页本身也可以;
->each(function ($item, $key) {
$item['gender'] = '【'.$item['gender'].'】';
return $item;
});

8. 可以限定总记录数,比如,限定总记录数只有 10 条的页码;
->paginate(5, 10);

9. 也可以设置分页的页码为简洁分页,就是没有 1 2 3 4 这种,只有上下页;
->paginate(5, true);

你可能感兴趣的:(php,css,前端,html)