Php 如何使一个带有Laravel元素的多where子句变得通顺?
这个查询有什么问题 它忽略where status=3..Php 如何使一个带有Laravel元素的多where子句变得通顺?,php,laravel,eloquent,Php,Laravel,Eloquent,这个查询有什么问题 它忽略where status=3.. 并返回所有重新记录,即使状态为3 提前感谢。您应该将或where()分组并在此处结束: $data = Retour::where('status','=',3)->where('rma','LIKE', '%' .$searchquery.'%')->OrWhere('naam','LIKE', '%' .$searchquery.'%')->OrWhere('framenummer','LIKE', '%' .$s
并返回所有重新记录,即使状态为3
提前感谢。您应该将
或where()分组并在此处结束:
$data = Retour::where('status','=',3)->where('rma','LIKE', '%' .$searchquery.'%')->OrWhere('naam','LIKE', '%' .$searchquery.'%')->OrWhere('framenummer','LIKE', '%' .$searchquery.'%')->get();
在这种情况下使用范围
。看
还有一件事
它不是或where
它是或where
$data = Retour::where('status', 3)
->where(function($q) use($searchquery) {
$q->where('rma', 'like', '%'.$searchquery.'%')
->orWhere('naam', 'like', '%'.$searchquery.'%')
->orWhere('framenummer', 'like', '%'.$searchquery.'%');
})->get();
public function scopeSearch($query, $searchQuery)
{
return $query->where('status',3)
->where('rma','LIKE', "%$searchQuery%")
->orWhere('naam','LIKE', "%$searchQuery%")
->orWhere('framenummer','LIKE', "%$searchQuery%");
}