New way to define attribute accessors and mutators in Laravel 8.77:
// Before, two-method approachpublic function setTitleAttribute($value){    $this->attributes['title'] = strtolower($value);}public function getTitleAttribute($value){    return strtoupper($value);} // New approachprotected function title(): Attribute{    return new Attribute(        get: fn ($value) => strtoupper($value),        set: fn ($value) => strtolower($value),    );}
Actually, both approaches still work, and it's your personal preference which one to use.
Tip given by @Teacoders