tp5框架用foreach循环时候报Indirect modification of overloaded element of think\paginator\driver\Bootst错误

thinkphp5使用paginator分页查询数据后,需要foreach便利处理某一字段的数据,会出现类似题目的错误。主要是因为tp5使用分页类读取的数据不是纯数组的格式!所以在循环的时候需要用数据对象的形式进行处理。

例如:

$question_list = db('question')->alias('q')->join('tpt_user u','q.uid=u.id')->field('q.id,q.content,q.time,q.status,q.show,u.phone')->paginate(15);
        $items = $question_list->items();
        foreach ($items as $k => $v){
            $items[$k]['phone'] = substr_replace($v['phone'],'****',3,4);
        }
        $this->assign('question_list',$question_list);
        $this->assign('items',$items);

 前台使用volist或者foreach处理列表数据时name就是items。

{volist name="items" id="vo"}
{/volist}

分页还是例子中的question_list。这样:{$question_list->render()}

posted @ 2018-06-08 15:28  TOPHP  阅读(10016)  评论(1编辑  收藏  举报