trait HasAttributes (View source)
protected array | $attributes | The model's attributes. | |
protected array | $original | The model attribute's original state. | |
protected array | $changes | The changed model attributes. | |
protected array | $casts | The attributes that should be cast. | |
protected array | $classCastCache | The attributes that have been cast using custom classes. | |
static protected string[] | $primitiveCastTypes | The built-in, primitive cast types supported by Eloquent. | |
protected array | $dates | The attributes that should be mutated to dates. | |
protected string | $dateFormat | The storage format of the model's date columns. | |
protected array | $appends | The accessors to append to the model's array form. | |
static bool | $snakeAttributes | Indicates whether attributes are snake cased on arrays. | |
static protected array | $mutatorCache | The cache of the mutated attributes for each class. | |
static Encrypter | $encrypter | The encrypter instance that is used to encrypt attributes. |
array | attributesToArray() Convert the model's attributes to an array. | |
array | addDateAttributesToArray(array $attributes) Add the date attributes to the attributes array. | |
array | addMutatedAttributesToArray(array $attributes, array $mutatedAttributes) Add the mutated attributes to the attributes array. | |
array | addCastAttributesToArray(array $attributes, array $mutatedAttributes) Add the casted attributes to the attributes array. | |
array | getArrayableAttributes() Get an attribute array of all arrayable attributes. | |
array | getArrayableAppends() Get all of the appendable values that are arrayable. | |
array | relationsToArray() Get the model's relationships in array form. | |
array | getArrayableRelations() Get an attribute array of all arrayable relations. | |
array | getArrayableItems(array $values) Get an attribute array of all arrayable values. | |
mixed | getAttribute(string $key) Get an attribute from the model. | |
mixed | getAttributeValue(string $key) Get a plain attribute (not a relationship). | |
mixed | getAttributeFromArray(string $key) Get an attribute from the $attributes array. | |
mixed | getRelationValue(string $key) Get a relationship. | |
mixed | getRelationshipFromMethod(string $method) Get a relationship value from a method. | |
bool | hasGetMutator(string $key) Determine if a get mutator exists for an attribute. | |
mixed | mutateAttribute(string $key, mixed $value) Get the value of an attribute using its mutator. | |
mixed | mutateAttributeForArray(string $key, mixed $value) Get the value of an attribute using its mutator for array conversion. | |
void | mergeCasts(array $casts) Merge new casts with existing casts on the model. | |
mixed | castAttribute(string $key, mixed $value) Cast an attribute to a native PHP type. | |
mixed | getClassCastableAttributeValue(string $key, mixed $value) Cast the given attribute using a custom cast class. | |
string | getCastType(string $key) Get the type of cast for a model attribute. | |
mixed | deviateClassCastableAttribute(string $method, string $key, mixed $value) Increment or decrement the given attribute using the custom cast class. | |
mixed | serializeClassCastableAttribute(string $key, mixed $value) Serialize the given attribute using the custom cast class. | |
bool | isCustomDateTimeCast(string $cast) Determine if the cast type is a custom date time cast. | |
bool | isDecimalCast(string $cast) Determine if the cast type is a decimal cast. | |
mixed | setAttribute(string $key, mixed $value) Set a given attribute on the model. | |
bool | hasSetMutator(string $key) Determine if a set mutator exists for an attribute. | |
mixed | setMutatedAttributeValue(string $key, mixed $value) Set the value of an attribute using its mutator. | |
bool | isDateAttribute(string $key) Determine if the given attribute is a date or date castable. | |
$this | fillJsonAttribute(string $key, mixed $value) Set a given JSON attribute on the model. | |
void | setClassCastableAttribute(string $key, mixed $value) Set the value of a class castable attribute. | |
$this | getArrayAttributeWithValue(string $path, string $key, mixed $value) Get an array attribute with the given key and value set. | |
array | getArrayAttributeByKey(string $key) Get an array attribute or return an empty array if it is not set. | |
string | castAttributeAsJson(string $key, mixed $value) Cast the given attribute to JSON. | |
string | asJson(mixed $value) Encode the given value as JSON. | |
mixed | fromJson(string $value, bool $asObject = false) Decode the given JSON back into an array or object. | |
mixed | fromEncryptedString(string $value) Decrypt the given encrypted string. | |
string | castAttributeAsEncryptedString(string $key, mixed $value) Cast the given attribute to an encrypted string. | |
static void | encryptUsing(Encrypter $encrypter) Set the encrypter instance that will be used to encrypt attributes. | |
mixed | fromFloat(mixed $value) Decode the given float. | |
string | asDecimal(float $value, int $decimals) Return a decimal as string. | |
Carbon | asDate(mixed $value) Return a timestamp as DateTime object with time set to 00:00:00. | |
Carbon | asDateTime(mixed $value) Return a timestamp as DateTime object. | |
bool | isStandardDateFormat(string $value) Determine if the given value is a standard date format. | |
string|null | fromDateTime(mixed $value) Convert a DateTime to a storable string. | |
int | asTimestamp(mixed $value) Return a timestamp as unix timestamp. | |
string | serializeDate(DateTimeInterface $date) Prepare a date for array / JSON serialization. | |
array | getDates() Get the attributes that should be converted to dates. | |
string | getDateFormat() Get the format for database stored dates. | |
$this | setDateFormat(string $format) Set the date format used by the model. | |
bool | hasCast(string $key, array|string|null $types = null) Determine whether an attribute should be cast to a native type. | |
array | getCasts() Get the casts array. | |
bool | isDateCastable(string $key) Determine whether a value is Date / DateTime castable for inbound manipulation. | |
bool | isJsonCastable(string $key) Determine whether a value is JSON castable for inbound manipulation. | |
bool | isEncryptedCastable(string $key) Determine whether a value is an encrypted castable for inbound manipulation. | |
bool | isClassCastable(string $key) Determine if the given key is cast using a custom class. | |
bool | isClassDeviable(string $key) Determine if the key is deviable using a custom class. | |
bool | isClassSerializable(string $key) Determine if the key is serializable using a custom class. | |
mixed | resolveCasterClass(string $key) Resolve the custom caster class for a given key. | |
string | parseCasterClass(string $class) Parse the given caster class, removing any arguments. | |
void | mergeAttributesFromClassCasts() Merge the cast class attributes back into the model. | |
array | normalizeCastClassResponse(string $key, mixed $value) Normalize the response from a custom class caster. | |
array | getAttributes() Get all of the current attributes on the model. | |
$this | setRawAttributes(array $attributes, bool $sync = false) Set the array of model attributes. No checking is done. | |
mixed|array | getOriginal(string|null $key = null, mixed $default = null) Get the model's original attribute values. | |
mixed|array | getOriginalWithoutRewindingModel(string|null $key = null, mixed $default = null) Get the model's original attribute values. | |
mixed|array | getRawOriginal(string|null $key = null, mixed $default = null) Get the model's raw original attribute values. | |
array | only(array|mixed $attributes) Get a subset of the model's attributes. | |
$this | syncOriginal() Sync the original attributes with the current. | |
$this | syncOriginalAttribute(string $attribute) Sync a single original attribute with its current value. | |
$this | syncOriginalAttributes(array|string $attributes) Sync multiple original attribute with their current values. | |
$this | syncChanges() Sync the changed attributes. | |
bool | isDirty(array|string|null $attributes = null) Determine if the model or any of the given attribute(s) have been modified. | |
bool | isClean(array|string|null $attributes = null) Determine if the model and all the given attribute(s) have remained the same. | |
bool | wasChanged(array|string|null $attributes = null) Determine if the model or any of the given attribute(s) have been modified. | |
bool | hasChanges(array $changes, array|string|null $attributes = null) Determine if any of the given attributes were changed. | |
array | getDirty() Get the attributes that have been changed since last sync. | |
array | getChanges() Get the attributes that were changed. | |
bool | originalIsEquivalent(string $key) Determine if the new and old values for a given key are equivalent. | |
mixed | transformModelValue(string $key, mixed $value) Transform a raw model value using mutators, casts, etc. | |
$this | append(array|string $attributes) Append attributes to query when building a query. | |
$this | setAppends(array $appends) Set the accessors to append to model arrays. | |
bool | hasAppended(string $attribute) Return whether the accessor attribute has been appended. | |
array | getMutatedAttributes() Get the mutated attributes for a given instance. | |
static void | cacheMutatedAttributes(string $class) Extract and cache all the mutated attributes of a class. | |
static array | getMutatorMethods(mixed $class) Get all of the attribute mutator methods. |
Convert the model's attributes to an array.
Add the date attributes to the attributes array.
Add the mutated attributes to the attributes array.
Add the casted attributes to the attributes array.
Get an attribute array of all arrayable attributes.
Get all of the appendable values that are arrayable.
Get the model's relationships in array form.
Get an attribute array of all arrayable relations.
Get an attribute array of all arrayable values.
Get an attribute from the model.
Get a plain attribute (not a relationship).
Get an attribute from the $attributes array.
Get a relationship.
Get a relationship value from a method.
Determine if a get mutator exists for an attribute.
Get the value of an attribute using its mutator.
Get the value of an attribute using its mutator for array conversion.
Merge new casts with existing casts on the model.
Cast an attribute to a native PHP type.
Cast the given attribute using a custom cast class.
Get the type of cast for a model attribute.
Increment or decrement the given attribute using the custom cast class.
Serialize the given attribute using the custom cast class.
Determine if the cast type is a custom date time cast.
Determine if the cast type is a decimal cast.
Set a given attribute on the model.
Determine if a set mutator exists for an attribute.
Set the value of an attribute using its mutator.
Determine if the given attribute is a date or date castable.
Set a given JSON attribute on the model.
Set the value of a class castable attribute.
Get an array attribute with the given key and value set.
Get an array attribute or return an empty array if it is not set.
Cast the given attribute to JSON.
Encode the given value as JSON.
Decode the given JSON back into an array or object.
Decrypt the given encrypted string.
Cast the given attribute to an encrypted string.
Set the encrypter instance that will be used to encrypt attributes.
Decode the given float.
Return a decimal as string.
Return a timestamp as DateTime object with time set to 00:00:00.
Return a timestamp as DateTime object.
Determine if the given value is a standard date format.
Convert a DateTime to a storable string.
Return a timestamp as unix timestamp.
Prepare a date for array / JSON serialization.
Get the attributes that should be converted to dates.
Get the format for database stored dates.
Set the date format used by the model.
Determine whether an attribute should be cast to a native type.
Get the casts array.
Determine whether a value is Date / DateTime castable for inbound manipulation.
Determine whether a value is JSON castable for inbound manipulation.
Determine whether a value is an encrypted castable for inbound manipulation.
Determine if the given key is cast using a custom class.
Determine if the key is deviable using a custom class.
Determine if the key is serializable using a custom class.
Resolve the custom caster class for a given key.
Parse the given caster class, removing any arguments.
Merge the cast class attributes back into the model.
Normalize the response from a custom class caster.
Get all of the current attributes on the model.
Set the array of model attributes. No checking is done.
Get the model's original attribute values.
Get the model's original attribute values.
Get the model's raw original attribute values.
Get a subset of the model's attributes.
Sync the original attributes with the current.
Sync a single original attribute with its current value.
Sync multiple original attribute with their current values.
Sync the changed attributes.
Determine if the model or any of the given attribute(s) have been modified.
Determine if the model and all the given attribute(s) have remained the same.
Determine if the model or any of the given attribute(s) have been modified.
Determine if any of the given attributes were changed.
Get the attributes that have been changed since last sync.
Get the attributes that were changed.
Determine if the new and old values for a given key are equivalent.
Transform a raw model value using mutators, casts, etc.
Append attributes to query when building a query.
Set the accessors to append to model arrays.
Return whether the accessor attribute has been appended.
Get the mutated attributes for a given instance.
Extract and cache all the mutated attributes of a class.
Get all of the attribute mutator methods.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/8.x/Illuminate/Database/Eloquent/Concerns/HasAttributes.html