concat 在sql语句中直接拼接地址 不需要再foreach循环
concat("'.config("img_url").'", pic.imgurl ) as imgurl
示例
$where = [];
$where['ac.estate'] = array('eq',\app\common\enum\Estate::VALID);
$where['ac.isuse'] = array('eq',\app\common\enum\IsUse::VALID);
$result = $this->alias('ac')->where($where)
->join(getDbPrefix().'picture pic','ac.pictureid=pic.id','LEFT')
->join(getDbPrefix().'url ur','ac.urlid=ur.id','LEFT')
->field('ac.id,ac.title,ac.describe,ac.attendcount,concat("'.config("img_url").'", pic.imgurl ) as imgurl,ur.url')
->order('ac.weight','asc')
->select();
return $result;
使用之前
20200610/3da3b225494c50da0dfab68288d2fe0f.jpg
结果集
http:\\101.201.196.161\uploads\20200610\3da3b225494c50da0dfab68288d2fe0f.jpg
今天同事给我说这个方法的时候犹如发现新大陆,以前一直都是用foreach循环拼接的,原谅我头发长见识短了,赶快记录下来,方便以后使用