Blog / Laravel / Accessors
Los accessors de Laravel son métodos especiales que modifican de forma automática los datos relacionados con una propiedad específica de un modelo.
Los accessors de Laravel son métodos especiales que modifican de forma automática los datos relacionados con una propiedad específica de un modelo.
Los accessors fueron modificados en la versión 9 de Laravel, en el siguiente ejemplo defino dos accessors para modificar "fechas":
<?php
namespace App\Models\Traits;
use Carbon\Carbon;
use Illuminate\Database\Eloquent\Casts\Attribute;
trait TimestampAccessorsTrait
{
private string $format = 'd-m-Y H:i';
/**
* Accessor for "created_at" // syntax from Laravel 9
*
* @return Attribute
*/
protected function createdAt(): Attribute
{
return Attribute::make(
get: fn (string $value) => Carbon::parse($value)->format($this->format)
);
}
/**
* Accessor for "updated_at" // old syntax, valid at least till Laravel 10
*
* @param string|null $value
* @return string|null
*/
public function getUpdatedAtAttribute(?string $value):? string
{
return Carbon::parse($value)->format($this->format);
}
}
Al definir los accesors en un trait, solo se require usarlo en los modelos en que los necesitemos.
08-10-2025