这几天在做项目时,需要对一个只保存图片url的数组进行分页展示,但是以为目前的了解,只知道TP5中对查询的数据集提供了paginate分页,使用起来也较为方便,却没有一个简单便捷的方法对数组进行分页,经过一番查找和修改,终于整理出一个可以完整使用的分页代码
后端代码
$data = $url_arr;
$curpage = input('page') ? input('page') : 1;//当前第x页,有效值为:1,2,3,4,5...
$listRow = 9;//每页10行记录
$dataTo = array();
$dataTo = array_chunk($data, $listRow);
$showdata = array();
if ($dataTo) {
$showdata = $dataTo[$curpage - 1];
} else {
$showdata = null;
}
$p = Bootstrap::make($showdata, $listRow, $curpage, count($data), false, [
'var_page' => 'page',
'path' => '',//这里根据需要修改url
'query' => Request::instance()->param(),//此处参数可以保留当前数据集的查询条件
'fragment' => '',
]);
$p->appends($_GET);
$this->assign('plist', $p);
$this->assign('plistpage', $p->render());
前端模板
<ul id="Gallery" class="photo">
{foreach name="plist" item="v"}
<li><a href="__ROOT__/{$v}"><img src="__ROOT__/{$v}" alt=""></a></li>
{/foreach}
</ul>
<div>{$plistpage}</div>