If you need to check if the record exists, and then update it, or create a new record otherwise, you can do it in one sentence - use Eloquent method updateOrCreate():
// Instead of this$flight = Flight::where('departure', 'Oakland') ->where('destination', 'San Diego') ->first();if ($flight) { $flight->update(['price' => 99, 'discounted' => 1]);} else { $flight = Flight::create([ 'departure' => 'Oakland', 'destination' => 'San Diego', 'price' => 99, 'discounted' => 1 ]);}// Do it in ONE sentence$flight = Flight::updateOrCreate( ['departure' => 'Oakland', 'destination' => 'San Diego'], ['price' => 99, 'discounted' => 1]);
Enjoyed This Tip?
Get access to all premium tutorials, video and text courses, and exclusive Laravel resources. Join our community of 10,000+ developers.
Recent Courses
[NEW] Laravel 13 Starter Kit Teams and Customizations
10 lessons
33 min
Laravel 13 Eloquent: Expert Level
41 lessons
1 h 34 min
NativePHP v3: Create Mobile Apps with Laravel
10 lessons
1 h 02 min