HasAttributes
trait HasAttributes (View source)
Свойства
| protected массив | $attributes | Атрибуты модели. | |
| protected массив | $original | Исходное состояние атрибутов модели. | |
| protected массив | $changes | Измененные атрибуты модели. | |
| protected массив | $casts | Атрибуты, которые должны быть преобразованы в базовые типы. | |
| protected массив | $dates | Атрибуты, которые должны быть преобразованы в даты. | |
| protected строка | $dateFormat | Формат хранения столбцов даты модели. | |
| protected массив | $appends | Аксессоры для добавления к массиву формы модели. | |
| static bool | $snakeAttributes | Указывает, являются ли атрибуты в массивах с нижним подчеркиванием. | |
| static protected массив | $mutatorCache | Кэш измененных атрибутов для каждого класса. |
Методы
| массив | attributesToArray() Преобразовать атрибуты модели в массив. | |
| массив | addDateAttributesToArray(массив $attributes) Добавить атрибуты даты в массив атрибутов. | |
| массив | addMutatedAttributesToArray(массив $attributes, массив $mutatedAttributes) Добавить измененные атрибуты в массив атрибутов. | |
| массив | addCastAttributesToArray(массив $attributes, массив $mutatedAttributes) Добавить атрибуты с преобразованием в массив атрибутов. | |
| массив | getArrayableAttributes() Получить массив атрибутов всех преобразуемых в массив атрибутов. | |
| массив | getArrayableAppends() Получить все значения для добавления, которые могут быть преобразованы в массив. | |
| массив | relationsToArray() Получить отношения модели в виде массива. | |
| массив | getArrayableRelations() Получить массив всех отношений, преобразуемых в массив. | |
| массив | getArrayableItems(массив $values) Получить массив атрибутов всех преобразуемых в массив значений. | |
| смешанный | getAttribute(строка $key) Получить атрибут из модели. | |
| смешанный | getAttributeValue(строка $key) Получить простой атрибут (не отношение). | |
| смешанный | getAttributeFromArray(строка $key) Получить атрибут из массива $attributes. | |
| смешанный | getRelationValue(строка $key) Получить отношение. | |
| смешанный | getRelationshipFromMethod(строка $method) Получить значение отношения из метода. | |
| логическое | hasGetMutator(строка $key) Определить, существует ли мутатор для получения атрибута. | |
| смешанный | mutateAttribute(строка $key, смешанный $value) Получить значение атрибута, используя его мутатор. | |
| смешанный | mutateAttributeForArray(строка $key, смешанный $value) Получить значение атрибута, используя его мутатор для преобразования в массив. | |
| смешанный | castAttribute(строка $key, смешанный $value) Преобразовать атрибут к своему внутреннему PHP типу. | |
| строка | getCastType(строка $key) Получить тип преобразования для атрибута модели. | |
| $this | setAttribute(строка $key, смешанный $value) Установить заданный атрибут модели. | |
| логическое | hasSetMutator(строка $key) Определить, существует ли мутатор для установки атрибута. | |
| логическое | isDateAttribute(строка $key) Определить, является ли данный атрибут датой или допускающим преобразование в дату. | |
| $this | fillJsonAttribute(строка $key, смешанный $value) Установить заданный атрибут JSON в модели. | |
| $this | getArrayAttributeWithValue(строка $path, строка $key, смешанный $value) Получить атрибут-массив со заданным ключом и значением. | |
| массив | getArrayAttributeByKey(строка $key) Получить атрибут-массив или вернуть пустой массив, если он не установлен. | |
| строка | castAttributeAsJson(строка $key, смешанный $value) Преобразовать заданный атрибут в JSON. | |
| строка | asJson(смешанный $value) Кодировать данное значение в JSON. | |
| смешанный | fromJson(строка $value, логическое $asObject = ложь) Декодировать заданный JSON в массив или объект. | |
| Carbon | asDate(смешанный $value) Возвращает метку времени как объект DateTime с временем 00:00:00. | |
| Carbon | asDateTime(смешанный $value) Возвращает метку времени как объект DateTime. | |
| логическое | isStandardDateFormat(строка $value) Определить, является ли заданное значение стандартным форматом даты. | |
| строка | fromDateTime(DateTime|целое $value) Преобразовать DateTime в сохраняемую строку. | |
| целое | asTimestamp(смешанный $value) Возвращает метку времени как unix-метку времени. | |
| строка | serializeDate(DateTimeInterface $date) Подготовить дату для сериализации в массив/JSON. | |
| массив | getDates() Получить атрибуты, которые должны быть преобразованы в даты. | |
| строка | getDateFormat() Получить формат даты для хранения в базе данных. | |
| $this | setDateFormat(строка $format) Установить формат даты, используемый моделью. | |
| логическое | hasCast(строка $key, массив|строка|null $types = null) Определить, следует ли преобразовать атрибут в определенный тип. | |
| массив | getCasts() Получить массив преобразований. | |
| логическое | isDateCastable(строка $key) Определить, может ли значение быть преобразовано в дату/DateTime для входных данных. | |
| логическое | isJsonCastable(строка $key) Определить, может ли значение быть преобразовано в JSON для входных данных. | |
| массив | getAttributes() Получить все текущие атрибуты модели. | |
| $this | setRawAttributes(массив $attributes, логическое $sync = ложь) Установить массив атрибутов модели. Проверка не выполняется. | |
| смешанный|массив | getOriginal(строка|null $key = null, смешанный $default = null) Получить исходные значения атрибутов модели. | |
| массив | only(массив|смешанный $attributes) Получить подмножество атрибутов модели. | |
| $this | syncOriginal() Синхронизировать исходные атрибуты с текущими. |
| $this | syncOriginalAttribute(string $attribute) Синхронизировать одно исходное атрибут со своим текущим значением. | |
| $this | syncChanges() Синхронизировать изменённые атрибуты. | |
| bool | isDirty(array|string|null $attributes = null) Определить, был ли изменён модель или заданные атрибуты. | |
| bool | isClean(array|string|null $attributes = null) Определить, остались ли модель или заданные атрибуты неизменными. | |
| bool | wasChanged(array|string|null $attributes = null) Определить, были ли изменены модель или заданные атрибуты. | |
| bool | hasChanges(array $changes, array|string|null $attributes = null) Определить, были ли изменены указанные атрибуты. | |
| array | getDirty() Получить атрибуты, которые были изменены с момента последней синхронизации. | |
| array | getChanges() Получить изменённые атрибуты. | |
| bool | originalIsEquivalent(string $key, mixed $current) Определить, эквивалентны ли новые и старые значения для данного ключа. | |
| $this | append(array|string $attributes) Добавить атрибуты к запросу при построении запроса. | |
| $this | setAppends(array $appends) Установить аксессоры для добавления к массивам модели. | |
| array | getMutatedAttributes() Получить изменённые атрибуты для данного экземпляра. | |
| static void | cacheMutatedAttributes(string $class) Извлечь и кэшировать все изменённые атрибуты класса. | |
| static array | getMutatorMethods(mixed $class) Получить все методы мутации атрибутов. |
Подробности
array attributesToArray()
Преобразовать атрибуты модели в массив.
protected array addDateAttributesToArray(array $attributes)
Добавить атрибуты даты в массив атрибутов.
protected array addMutatedAttributesToArray(array $attributes, array $mutatedAttributes)
Добавить изменённые атрибуты в массив атрибутов.
protected array addCastAttributesToArray(array $attributes, array $mutatedAttributes)
Добавить отформатированные атрибуты в массив атрибутов.
protected array getArrayableAttributes()
Получить массив атрибутов, которые можно преобразовать в массив.
protected array getArrayableAppends()
Получить все добавления, которые можно преобразовать в массив.
array relationsToArray()
Получить отношения модели в формате массива.
protected array getArrayableRelations()
Получить массив всех отношений, которые можно преобразовать в массив.
protected array getArrayableItems(array $values)
Получить массив всех значений, которые можно преобразовать в массив.
mixed getAttribute(string $key)
Получить атрибут из модели.
mixed getAttributeValue(string $key)
Получить простое значение атрибута (не отношения).
protected mixed getAttributeFromArray(string $key)
Получить атрибут из массива $attributes.
mixed getRelationValue(string $key)
Получить отношение.
protected mixed getRelationshipFromMethod(string $method)
Получить значение отношения из метода.
bool hasGetMutator(string $key)
Определить, существует ли мутатор получения для атрибута.
protected mixed mutateAttribute(string $key, mixed $value)
Получить значение атрибута с помощью его мутатора.
protected mixed mutateAttributeForArray(string $key, mixed $value)
Получить значение атрибута с использованием его мутатора для преобразования в массив.
protected mixed castAttribute(string $key, mixed $value)
Преобразовать атрибут в базовый тип PHP.
protected string getCastType(string $key)
Получить тип преобразования для атрибута модели.
$this setAttribute(string $key, mixed $value)
Установить заданный атрибут в модели.
bool hasSetMutator(string $key)
Определить, существует ли мутатор установки для атрибута.
protected bool isDateAttribute(string $key)
Определить, является ли заданный атрибут датой или преобразуемым в дату.
$this fillJsonAttribute(string $key, mixed $value)
Установить заданный атрибут JSON в модели.
protected $this getArrayAttributeWithValue(string $path, string $key, mixed $value)
Получить атрибут массива с заданным ключом и установленным значением.
protected array getArrayAttributeByKey(string $key)
Получить атрибут массива или вернуть пустой массив, если он не установлен.
protected string castAttributeAsJson(string $key, mixed $value)
Преобразовать заданный атрибут в JSON.
protected string asJson(mixed $value)
Кодировать заданное значение в JSON.
mixed fromJson(string $value, bool $asObject = false)
Декодировать заданный JSON обратно в массив или объект.
protected Carbon asDate(mixed $value)
Вернуть отметку времени как объект DateTime с временем, установленным в 00:00:00.
protected Carbon asDateTime(mixed $value)
Вернуть отметку времени как объект DateTime.
protected bool isStandardDateFormat(string $value)
Определить, является ли заданное значение стандартным форматом даты.
string fromDateTime(DateTime|int $value)
Преобразовать DateTime в сохраняемую строку.
protected int asTimestamp(mixed $value)
Вернуть отметку времени как метку времени Unix.
protected string serializeDate(DateTimeInterface $date)
Подготовить дату к сериализации в массив/JSON.
array getDates()
Получить атрибуты, которые должны быть преобразованы в даты.
protected string getDateFormat()
Получить формат для дат, хранящихся в базе данных.
$this setDateFormat(string $format)
Установить формат даты, используемый моделью.
bool hasCast(string $key, array|string|null $types = null)
Определить, следует ли преобразовать атрибут в родной тип.
array getCasts()
Получить массив преобразованных значений.
protected bool isDateCastable(string $key)
Определить, можно ли преобразовать значение в дату/DateTime для обработки на входе.
protected bool isJsonCastable(string $key)
Определить, можно ли преобразовать значение в JSON для обработки на входе.
array getAttributes()
Получить все текущие атрибуты модели.
$this setRawAttributes(array $attributes, bool $sync = false)
Установить массив атрибутов модели. Проверка не выполняется.
mixed|array getOriginal(string|null $key = null, mixed $default = null)
Получить исходные значения атрибутов модели.
array only(array|mixed $attributes)
Получить подмножество атрибутов модели.
$this syncOriginal()
Синхронизировать исходные атрибуты с текущими.
$this syncOriginalAttribute(string $attribute)
Синхронизировать один исходный атрибут со своим текущим значением.
$this syncChanges()
Синхронизировать изменённые атрибуты.
bool isDirty(array|string|null $attributes = null)
Определить, была ли модель или заданные атрибуты изменены.
bool isClean(array|string|null $attributes = null)
Определить, модель или заданные атрибуты остались неизменными.
bool wasChanged(array|string|null $attributes = null)
Определить, была ли модель или заданные атрибуты изменены.
protected bool hasChanges(array $changes, array|string|null $attributes = null)
Определить, были ли изменены заданные атрибуты.
array getDirty()
Получить атрибуты, которые были изменены с момента последней синхронизации.
array getChanges()
Получить атрибуты, которые были изменены.
protected bool originalIsEquivalent(string $key, mixed $current)
Определить, эквивалентны ли новые и старые значения для заданного ключа.
$this append(array|string $attributes)
Добавить атрибуты к запросу при построении запроса.
$this setAppends(array $appends)
Установить аксессоры для добавления к массивам модели.
array getMutatedAttributes()
Получить изменённые атрибуты для данного экземпляра.
static void cacheMutatedAttributes(string $class)
Извлечь и кэшировать все изменённые атрибуты класса.
static protected array getMutatorMethods(mixed $class)
Получить все методы мутаторов атрибутов.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/5.5/Illuminate/Database/Eloquent/Concerns/HasAttributes.html