项目中常有搜索(多个字段),以此key_word举列
public function motorcycleList($key_word, $car_nature,$userId,$size)
{
$query = ReportedCar::where(['is_del'=>selef::CAR_DEL,'st_id'=>$userId]);
if (isset($car_nature) && !empty($car_nature)) $query->where('car_nature', '=', $car_nature);
if (isset($key_word))
$query->where(function ($que ) use($key_word){
$que->where('vm_plate', 'like', '%'.$key_word . '%')->orWhere('customer_name', 'like', '%'.$key_word . '%')->orWhere('customer_phone', 'like', '%'.$key_word . '%');
});
$res = $query->select($this->commentSelectAct) //此定义查询字段
->orderBy('id', 'desc')
->paginate($size);
return response_json(200, 'success', $res);
}
用闭包函数定义 多字段释义key_word, 这样才能保证 此在一个where条件里,闭包函数的语法相当简单,需要注意的关键字 只有use
,use是连接闭包和外界变量,