THINKPHP5分页数据对象处理过程解析
在用到THINKPHP5的分页的时候,我们可以发现获取的数据是对象,如果我们要对数据进行循环增加数据就实现不了
今天用此方法解决,以做记录方便以后忘了查看
//查询状态为1的用户数据并且每页显示30条数据
$list=db('commission_log')->order('iddesc')->paginate(30);
//获取分页显示
$page=$list->render();
$list=$list->all();//这是关键
//模板变量赋值
foreach($listas$k=>$v){
//通过用户ID查询代理名
$list[$k]['username']=db('userinfo')->where(array('uid'=>$v['uid']))->value('username');
}
$this->assign('list',$list);
$this->assign('page',$page);
//渲染模板输出
return$this->fetch();
分页后数据处理(V5.0.9)
V5.0.9版本开始支持分页类后数据直接each遍历处理,方便修改分页后的数据,而不是只能通过模型的获取器来补充字段。
$list=User::where('status',1)->paginate()->each(function($item,$key){
$item->nickname='think';
});
如果是Db类操作分页数据的话,each方法的闭包函数中需要使用返回值,例如:
$list=Db::name('user')->where('status',1)->paginate()->each(function($item,$key){
$item['nickname']='think';
return$item;
});
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。