【thinkphp6】Indirect modification of overloaded element of think\Collection has no effect<
转载声明:
本文为摘录自“博客园”,版权归原作者所有。
温馨提示:
为了更好的体验,请点击原文链接进行浏览
摘录时间:
2021-01-11 18:16:45
背景: 在进行查询并循环时候 报错
错误代码
$data_list = Db::name("activity")
->where('id',1)
->select();
if(!empty($data_list)){
foreach ($data_list as $key => $value) {
$company_mes = $CompanyModel->get_company_mes($value['company_id']);
$data_list[$key]['company_name'] = $company_mes['company_name'];
$data_list[$key]['company_logo'] = $company_mes['company_logo'];
}
}
原因就是: 此时用select() 方法 得出的结果是 对象。 打印一下 data_list
解决办法: 再加一句下边代码,在进行循环处理
$data_list = $data_list->all();
或者直接在 链接查询后边 追加 一下 : select()->all();