You can create custom casts to have Laravel automatically format your Eloquent model data. Here's an example that capitalises a user's name when it is retrieved or changed.
class CapitalizeWordsCast implements CastsAttributes{ public function get($model, string $key, $value, array $attributes) { return ucwords($value); } public function set($model, string $key, $value, array $attributes) { return ucwords($value); }} class User extends Model{ protected $casts = [ 'name' => CapitalizeWordsCast::class, 'email' => 'string', ];}
Tip given by @mattkingshott
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
How to Build Laravel 12 API From Scratch
28 lessons
1 h 21 min
Laravel 12 For Beginners: Your First Project
15 lessons
1 h 32 min
PhpStorm Junie AI for Laravel Projects: Crash Course
7 lessons
36 min