TP5分页使用方法说明

TP5分页使用方法说明
TP5分页的使用方法,在手册中有详细的说明

控制器中关键代码如下:

// 查询状态为1的用户数据 并且每页显示10条数据 l i s t = D b : : n a m e ( ′ u s e r ′ ) − > w h e r e ( ′ s t a t u s ′ , 1 ) − > p a g i n a t e ( 10 ) ; / / 把 分 页 数 据 赋 值 给 模 板 变 量 l i s t list = Db::name('user')->where('status',1)->paginate(10);// 把分页数据赋值给模板变量list list=Db::name(user)>where(status,1)>paginate(10);//listthis->assign(‘list’, l i s t ) ; / / 渲 染 模 板 输 出 r e t u r n list);// 渲染模板输出return list);//returnthis->fetch();

模板文件中分页输出代码如下:

{volist name=‘list’ id=‘user’}

{$user.nickname}

{/volist}

{$list->render()}

上面的方法非常简单,但是如果我想在查询出来的数据中加入新的值的,上面的方法就不能用了,当你尝试对$list进行循环的时候,会报如下的错误

Indirect modification of overloaded element of think\paginator\Collection has no effect

这是因为$list不是一个数组,而是数据集对象think\Collection手册地址

select()返回的是二维数组结果集,paginate()返回的是对象类型的结果集

下面是我的处理方法

// 查询状态为1的用户数据 并且每页显示10条数据 l i s t = D b : : n a m e ( ′ u s e r ′ ) − > w h e r e ( ′ s t a t u s ′ , 1 ) − > p a g i n a t e ( 10 ) ; / / 获 取 分 页 显 示 list = Db::name('user')->where('status',1)->paginate(10);// 获取分页显示 list=Db::name(user)>where(status,1)>paginate(10);//page = l i s t − > r e n d e r ( ) ; list->render(); list>render();data = l i s t − > a l l ( ) ; f o r e a c h ( list->all();foreach( list>all();foreach(dataas k e y = > key=> key=>val){ d a t a [ data[ data[key][‘key’] = KaTeX parse error: Expected 'EOF', got '}' at position 5: key;}̲this->assign(‘data’, d a t a ) ; data); data);this->assign(‘page’, p a g e ) ; / / 渲 染 模 板 输 出 r e t u r n page);// 渲染模板输出return page);//returnthis->fetch();

模板文件中分页输出代码如下:

{volist name=‘data’ id=‘user’}

{$user.nickname}

{/volist}

{$page}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值