使用paginate()分页,我这里实现的是搜索后分页显示,翻页后传递搜索关键字 www.demo.com/home/search/?k=搜索关键字&page=2 搜索分页源码在: thinkphp/library/think/db/query.php查看,thinkphp5的手册真是坑我这种彩笔。

    
 主要填写 $config的参数
 /**
     * 分页查询
     * @param int|array $listrows 每页数量 数组表示配置参数
     * @param int|bool  $simple   是否简洁模式或者总记录数
     * @param array     $config   配置参数
     *                            page:当前页,
     *                            path:url路径,
     *                            query:url额外参数,
     *                            fragment:url锚点,
     *                            var_page:分页变量,
     *                            list_rows:每页数量
     *                            type:分页类名

 

$config[‘query’] = [‘键’=>’值’]; 额外参数

我自己的部分代码:

 1 $config['query'] = ['k'=>$key];
 2 
 3 ->order($order)
 4 ->paginate(12, false,$config)
 5 ->each(function (&$item, $key) {
 6 $coverimg = unserialize($item['coverimg']);
 7 if (is_array($coverimg)) {
 8 if (count($coverimg) > 0) {
 9 $item['coverimg'] = get_thumb($coverimg[0]);
10 } else {
11 $item['coverimg'] = null;
12 }