Простое использование whereOr()
logi c, затем по стране, имени или городу. Это автоматически решит проблему слияния в одну коллекцию.
$searchResult = DB::table('table_name')->where('country', $request->country)
->orWhere('name', $request->name )
->orWhere('city', $request->city);
Чтобы избежать пустых параметров, используйте функцию when()
, которая будет выполняться только при выполнении условия.
$searchResult = DB::table('table_name')
->when($request->country, function ($query) use ($request) {
$query->orWhere('country', $request->country);
})->when($request->name, function ($query) use ($request) {
$query->orWhere('name', $request->name);
})->when($request->city, function ($query) use ($request) {
$query->orWhere('city', $request->city);
});