基本参数
pagination($perPage, $page)
$perPage每页数,$page当前页数
$pagination = new \startmvc\lib\Pagination; $pagination->theme = '%header% %first% %prev% %link% %next% %last%'; //可选,设置页码格式,%……%对应的是下面的各属性,%link%为数字页码 $pagination->header = '共 %count% 条记录 第 %page% / %pageCount% 页'; //可选,%count%为数据总数,%page%为当前页,%pageCount%为总页数 $pagination->first = '首页'; //可选,首页链接字符 $pagination->last = '末页'; //可选,末页链接字符 $pagination->prev = '上一页'; //可选,上一页链接字符 $pagination->next = '下一页'; //可选,下一页链接字符 $pagination->currentClass = 'current'; //可选,当前页的数字页码链接CSS类 $pageShow = $pagination->Show(500, 10, 1, 'home/index/list?page={page}', 10); /* 参数 @count:int 数据总条数 @pageSize: int 每页数据条数 @page: int 当前页数 @url: string 页码链接,用{page}替换页数 @showCount: int 可选,数字页码显示数量,默认10 */ echo $pageShow;
除了通过上面对象传参外,也可以通过配置进行参数设定,文件位于config/pagination.php
//分页配置 return [ 'theme' => '%header% %first% %prev% %link% %next% %last%',//分页样式 'header' => 'Total %count% Page %page% / %pageCount%',//分页头部 'first' => '首页',//首页 'last' => '末页',//末页 'prev' => '上一页',//上一页 'next' => '下一页',//下一页 'currentClass' => 'is-current',//当前页码类 ];
分页实例
namespace app\home\controller; use app\common\BaseController; class ArticleController extends BaseController{ public function indexAction(int $page=1) { $page=$page?:1; $data['article_list']=$this->db->table('article')->pagination(10,$page)->getAll(); $pagination = new \startmvc\lib\Pagination; $data['pageShow'] = $pagination->Show(100, 10, $page, '/log/index/{page}', 5); $this->view($data); } }
视图代码
<ul> <?php foreach($article_list as $v){?> <li><a href="/"><?=$v['title']?></a></li> <?php }?> </ul> <div class="pages"> <?=$pageShow?> </div>
效果图