分页

SW-X的数据库ORM操作,都统一依赖\x\Db();类。

SW-X内置了分页实现,要给数据添加分页输出功能变得非常简单,可以直接在Db类查询的时候调用paginate()方法:

$Db = new \x\Db();
// 查询状态为1的用户数据 并且每页显示10条数据
$pageObj = $Db->name('user')->where('status',1)->paginate(10);
// 获取分页查询数据
$list = $pageObj->list();
// 获取分页HTML
$page = $pageObj->render();
// 模板变量赋值
$this->assign('list', $list);
$this->assign('page', $page);
// 渲染模板输出
return $this->display();

如果我们想给分页的URL修改get参数分页名称,又或者是传递更多的分页参数,可以传入第二个参数:

$Db = new \x\Db();
// 查询状态为1的用户数据 并且每页显示10条数据
$pageObj = $Db->name('user')->where('status',1)->paginate(10, [
    'var_page' => 'page', // 分页名称
    'query' => [ // 更多分页参数
        'type' => 1,
        'keys' => '测试',
    ],
    'fragment' => 'load' // 额外的锚点名称
]);
// 获取分页查询数据
$list = $pageObj->list();
// 获取分页HTML
$page = $pageObj->render();
// 模板变量赋值
$this->assign('list', $list);
$this->assign('page', $page);
// 渲染模板输出
return $this->display();