thinkphp 分页 paginate 怎么使用 each循环数据 进行操作

发布时间:2023-01-20 08:00

thinkphp 分页 paginate 出来的结果不是个数组 所以我们不用平常的 foreach/for 进行循环 但是我们 又必须对里面的数据 进行处理 这个时候 就需要 用each函数了 

    public function banks_account_list($data=[],$user=[])
    {
        $result = AccountModel::alias('a')->join('user_banks b','a.bank_id=b.id')->where(['uid'=>$data['id'], 'status'=>1])->order('create_time desc')->paginate()->each(function($item, $key){
            $item['bank_img'] = get_file_url($item['bank_img']);
        });
        if(count($result['data'])>1){
            return ApiReturn::r(1, $result, '请求成功');
        }
        return ApiReturn::r(0, [], '暂无数据');

    }

这个只是其中一个方法 你如果 不想用这种方法 就只能 用 toArray 方法了

 public function banks_account_list($data=[],$user=[])
    {
        $result = AccountModel::alias('a')->join('user_banks b','a.bank_id=b.id')->where(['uid'=>$data['id'], 'status'=>1])->order('create_time desc')->paginate()->toArray();
        foreach ($result as &$val){
            $val['bank_img'] = get_file_url($val['bank_img']);
        }
        if(count($result['data'])>1){
            return ApiReturn::r(1, $result, '请求成功');
        }
        return ApiReturn::r(0, [], '暂无数据');

    }

这个方法 也是可以  如果你有 更好的 方法 请留言 分享哦 

ItVuer - 免责声明 - 关于我们 - 联系我们

本网站信息来源于互联网,如有侵权请联系:561261067@qq.com

桂ICP备16001015号