Laravel Trick : when statement
Feb 20, 2022
Eloquent when statement to avoid if else conditions. But did you know it has another parameter, a fallback function, which could be translated as when not or else ?
$posts = User ::query()->when(request(‘order_by’)==’name’, function ($query){
return $query->orderBy(‘name’);
}, function ($query){
return $query->orderBy(‘created_at’,’desc’);
})
->get();