Трейт EntityTrait
Сущность представляет собой одну строку результата из репозитория. Она предоставляет методы для извлечения и сохранения свойств, связанных в этой строке.
Прямые пользователи
Краткое описание свойств
-
$_accessibleprotectedarrayКарта свойств в этой сущности, которые можно безопасно присвоить, каждое имя свойства указывает на булево значение, указывающее его статус. Пустой массив означает, что нет доступных свойств
- Хранит кэшированный список геттеров/сеттеров по классу
array -
$_classNameprotectedХранит имя класса для объекта экземпляраstring -
$_dirtyprotectedarrayХранит список свойств, которые были изменены или добавлены после того, как этот объект был первоначально создан.
-
$_errorsprotectedСписок ошибок по полю, как хранится в этом объектеarray -
$_hiddenprotectedarrayСписок имён свойств, которые не должны включаться в JSON или массивы представлений этой сущности.
-
$_invalidprotectedСписок недопустимых полей и их данных для ошибок при валидации/патчингеarray -
$_newprotectedbooleanУказывает, сохранена ли эта сущность. Сущности по умолчанию предполагают, что они новые. Вы можете использовать Table::persisted() для установки нового флага для сущности на основе записей в базе данных.
-
$_originalprotectedХранит все изменённые свойства и их исходные значения для этой сущностиarray -
$_propertiesprotectedХранит все свойства и их значения для этой сущностиarray -
$_registryAliasprotectedПсевдоним репозитория, из которого пришла эта сущностьstring -
$_virtualprotectedarrayСписок вычисляемых или виртуальных полей, которые должны включаться в JSON или массивы представлений этой сущности. Если поле присутствует как в _hidden, так и в _virtual, поле не будет в массиве/JSON версии сущности.
Краткое описание методов
- __debugInfo() public
Возвращает массив, который можно использовать для описания внутреннего состояния этого объекта.
- __get() publicМагический метод доступа к свойствам, которые были установлены в этом объекте
- __isset() public
Возвращает, содержит ли этот объект свойство с именем $property, независимо от того, пусто ли оно.
- __set() publicМагический метод установки для добавления или изменения свойства в этом объекте
- __toString() publicВозвращает строковое представление этого объекта в удобочитаемом формате.
- __unset() publicУдаляет свойство из этого объекта
-
Получить имя метода доступа к свойству Методы доступа (доступные или нет) кешируются в $_accessors
- _nestedErrors() protectedВспомогательный метод для получения ошибок в вложенных объектах
- _readError() protectedСчитывает ошибку(и) из одного или нескольких объектов.
- accessible() public
Хранит информацию о том, можно ли изменить или установить значение свойства в этом объекте. Специальное свойство
*также может быть помечено как доступное или защищенное, что означает, что любое другое указанное ранее свойство примет его значение. Например,$entity->accessible('*', true)означает, что любое не указанное ранее свойство будет доступно по умолчанию. - clean() public
Отмечает весь объект как чистый, что означает, что он будет выглядеть так, как будто никакие свойства не были изменены или добавлены. Это полезный вызов для начальной загрузки объекта
- dirty() public
Устанавливает состояние «изменён» для отдельного свойства. Если вызов не содержит второго аргумента, он вернёт, было ли свойство изменено или нет после создания объекта.
- errors() public
Устанавливает сообщения об ошибках для поля или списка полей. Если вызов не содержит второго аргумента, он возвращает ошибки валидации для указанных полей. Если вызов не содержит аргументов, он возвращает все сообщения об ошибках валидации, хранящиеся в этом объекте и любых других вложенных объектах.
- extract() public
Возвращает массив с запрошенными свойствами, хранящимися в этом объекте, индексированными по имени свойства
- extractOriginal() public
Возвращает массив с запрошенными исходными свойствами, хранящимися в этом объекте, индексированными по имени свойства.
- extractOriginalChanged() public
Возвращает массив только с исходными свойствами, хранящимися в этом объекте, индексированными по имени свойства.
- get() publicВозвращает значение свойства по имени
- getDirty() publicПолучает изменённые свойства.
- getError() publicВозвращает ошибки валидации поля
- getErrors() publicВозвращает все ошибки валидации.
- getHidden() publicПолучает скрытые свойства.
- getInvalid() publicПолучить список недопустимых полей и их данных для ошибок при валидации/патчинге
- getInvalidField() publicПолучить одно значение недопустимого поля. Возвращает null, если не задано.
- getOriginal() publicВозвращает значение исходного свойства по имени
- getOriginalValues() publicПолучает все исходные значения объекта.
- getSource() publicВозвращает псевдоним хранилища, из которого был получен этот объект.
- getVirtual() publicПолучает виртуальные свойства этого объекта.
- has() public
Возвращает, содержит ли этот объект свойство с именем $property, содержащее ненулевое значение.
- hiddenProperties() publicПолучить/Установить скрытые свойства этого объекта.
- invalid() publicОтмечает поле как недопустимое и неподготовленное к включению в объект.
- isAccessible() publicПроверяет, доступно ли свойство
- isDirty() publicПроверяет, является ли объект или его отдельное свойство изменённым.
- isNew() public
Возвращает, был ли этот объект уже сохранён. Данный метод может возвращать null, если нет предшествующей информации о статусе этого объекта.
- jsonSerialize() publicВозвращает свойства, которые будут сериализованы как JSON
- offsetExists() publicРеализует isset($entity);
- offsetGet() publicРеализует $entity[$offset];
- offsetSet() publicРеализует $entity[$offset] = $value;
- offsetUnset() publicРеализует unset($result[$offset]);
- set() publicУстанавливает отдельное свойство внутри этого объекта.
- setAccess() public
Хранит информацию о том, можно ли изменить или установить значение свойства в этом объекте. Специальное свойство
*также может быть помечено как доступное или защищенное, что означает, что любое другое указанное ранее свойство примет его значение. Например,$entity->setAccess('*', true)означает, что любое не указанное ранее свойство будет доступно по умолчанию. - setDirty() publicУстанавливает состояние «изменён» для отдельного свойства.
- setError() publicУстанавливает ошибки для отдельного поля
- setErrors() publicУстанавливает сообщения об ошибках для объекта
- setHidden() publicУстанавливает скрытые свойства.
- setInvalid() publicОтмечает поля как недопустимые и неподготовленные к включению в объект.
- setInvalidField() publicОтмечает поле как недопустимое и неподготовленное к включению в объект.
- setSource() publicУстанавливает псевдоним источника
- setVirtual() publicУстанавливает виртуальные свойства этого объекта.
- source() publicВозвращает псевдоним хранилища, из которого был получен этот объект.
- toArray() public
Возвращает массив со всеми свойствами, которые были установлены для этого объекта
- unsetProperty() publicУдаляет свойство или список свойств из этого объекта
- virtualProperties() publicПолучить/Установить виртуальные свойства этого объекта.
- visibleProperties() publicПолучить список видимых свойств.
Подробное описание методов
__debugInfo()source public
__debugInfo( )
Возвращает массив, который можно использовать для описания внутреннего состояния этого объекта.
Возвращает
массив__get()source public
__get( string $property )
Магический метод доступа к свойствам, которые были установлены в этом объекте.
Параметры
- строка
$property - Имя свойства для доступа
Возвращает
смешанное__isset()source public
__isset( string $property )
Возвращает значение, указывающее, содержит ли этот объект свойство с именем $property, независимо от того, пусто оно или нет.
Параметры
- строка
$property - Проверяемое свойство.
Возвращает
логическоеСм. также
\Cake\ORM\Entity::has()__set()source public
__set( string $property , mixed $value )
Магический метод установки для добавления или изменения свойства в этом объекте.
Параметры
- строка
$property - Имя свойства для установки
- смешанное
$value - Значение для установки свойства
__toString()source public
__toString( )
Возвращает строковое представление этого объекта в удобочитаемом формате.
Возвращает
строка__unset()source public
__unset( string $property )
Удаляет свойство из этого объекта.
Параметры
- строка
$property - Свойство для удаления
_accessor()source protected static
_accessor( string $property , string $type )
Получение имени метода доступа. Методы доступа (доступны или нет) кэшируются в $_accessors
Параметры
- строка
$property - Имя поля для получения имени метода доступа
- строка
$type - Тип доступа ('get' или 'set')
Возвращает
строкаИмя метода или пустая строка (метод недоступен)
_nestedErrors()source protected
_nestedErrors( string $field )
Вспомогательный метод для получения ошибок во вложенных объектах.
Параметры
- строка
$field - Поле в этом объекте для проверки ошибок
Возвращает
массивошибки во вложенном объекте, если есть
_readError()source protected
_readError( array|Cake\Datasource\EntityTrait $object , string|null $path null )
Чтение ошибки(ошибок) из одного или нескольких объектов.
Параметры
- массив|
Cake\Datasource\EntityTrait$object - Объект для чтения ошибок.
- строка|null
$pathнеобязательно null - Имя поля для ошибок.
Возвращает
массивaccessible()source public
accessible( string|array $property , boolean|null $set null )
Сохраняет, можно ли изменить или установить значение свойства в этом объекте. Специальное свойство * также может быть помечено как доступное или защищенное, что означает, что любое другое указанное ранее свойство примет его значение. Например, $entity->accessible('*', true) означает, что любое свойство, которое еще не указано, будет по умолчанию доступно.
Вы также можете вызвать этот метод с массивом свойств, в этом случае каждое из них получит указанное во втором аргументе значение доступности.
Пример:
$entity->accessible('id', true); // Mark id as not protected
$entity->accessible('author_id', false); // Mark author_id as protected
$entity->accessible(['id', 'user_id'], true); // Mark both properties as accessible
$entity->accessible('*', false); // Mark all properties as protected При вызове без второго параметра он вернет, можно ли установить свойство.
Пример:
$entity->accessible('id'); // Returns whether it can be set or not Устарело
3.4.0 Используйте EntityTrait::setAccess() и EntityTrait::isAccessible()Параметры
- строка|массив
$property - одно или список свойств для изменения доступности
- логическое|null
$setнеобязательно null true отмечает свойство как доступное, false — как защищенное.
Возвращает
$this|bool
clean()source public
clean( )
Помечает весь объект как чистый, что означает, что он будет отображаться как не имеющий измененных или добавленных свойств. Этот вызов полезен для первоначальной загрузки объекта.
dirty()source public
dirty( string|null $property null , null|boolean $isDirty null )
Устанавливает состояние изменения для одного свойства. Если вызвано без второго аргумента, возвращает, было ли свойство изменено после создания объекта.
Если вызвано без аргументов, возвращает, есть ли в объекте изменённые свойства.
Устарело
3.4.0 Используйте EntityTrait::setDirty() и EntityTrait::isDirty()Параметры
- строка|null
$propertyнеобязательно null - поле для установки или проверки состояния
- null|логическое
$isDirtyнеобязательно null true означает, что свойство было изменено, false — что не было, а null заставит функцию вернуть текущее состояние для этого свойства
Возвращает
логическоеБыло ли свойство изменено
errors()source public
errors( string|array|null $field null , string|array|null $errors null , boolean $overwrite false )
Устанавливает сообщения об ошибках для поля или списка полей. При вызове без второго аргумента возвращает ошибки валидации для указанных полей. Если вызвано без аргументов, возвращает все сообщения об ошибках валидации, сохраненные в этом объекте и любом другом вложенном объекте.
Пример
// Sets the error messages for a single field
$entity->errors('salary', ['must be numeric', 'must be a positive number']);
// Returns the error messages for a single field
$entity->errors('salary');
// Returns all error messages indexed by field name
$entity->errors();
// Sets the error messages for multiple fields at once
$entity->errors(['salary' => ['message'], 'name' => ['another message']); При использовании в качестве метода-установщика этот метод возвращает экземпляр этого объекта для цепочки вызовов методов.
Устарело
3.4.0 Используйте EntityTrait::setError(), EntityTrait::setErrors(), EntityTrait::getError() и EntityTrait::getErrors()Параметры
- строка|массив|null
$fieldнеобязательно null - Поле для получения ошибок или массив ошибок для установки.
- строка|массив|null
$errorsнеобязательно null - Ошибки для установки для $field
- логическое
$overwriteнеобязательно false - Заменить ли существующие ошибки для $field
Возвращает
массив|Cake\Datasource\EntityTrait$this
extract()source public
extract( array $properties , boolean $onlyDirty false )
Возвращает массив с запрошенными свойствами, сохраненными в этом объекте, индексированными по имени свойства.
Параметры
- массив
$properties - список свойств, которые должны быть возвращены
- логическое
$onlyDirtyнеобязательно false - Вернуть запрошенное свойство только если оно изменено
Возвращает
массивextractOriginal()source public
extractOriginal( array $properties )
Возвращает массив с исходными запрошенными свойствами, сохраненными в этом объекте, индексированными по имени свойства.
Свойства, которые не были изменены с момента их исходного значения, будут включены в результат этого метода.
Параметры
- массив
$properties - Список свойств, которые нужно вернуть
Возвращает
массивextractOriginalChanged()source public
extractOriginalChanged( array $properties )
Возвращает массив, содержащий только исходные свойства, сохранённые в этом объекте, индексированные по имени свойства.
Этот метод вернёт только те свойства, которые были изменены с момента создания объекта. Неизменённые свойства будут опущены.
Параметры
- массив
$properties - Список свойств, которые нужно вернуть
Возвращает
массивget()source public
get( string $property )
Возвращает значение свойства по имени.
Параметры
- строка
$property - имя свойства, значение которого нужно получить
Возвращает
смешанный типИсключения
InvalidArgumentExceptionесли имя свойства пустое
getError()source public
getError( string $field )
Возвращает ошибки валидации для поля.
Параметры
- строка
$field - Имя поля, для которого необходимо получить ошибки
Возвращает
массивgetInvalid()source public
getInvalid( )
Возвращает список невалидных полей и их данных для ошибок при валидации/патчинге.
Возвращает
массивgetInvalidField()source public
getInvalidField( string $field )
Возвращает одиночное значение невалидного поля. Возвращает null, если поле не задано.
Параметры
- строка
$field - Имя поля.
Возвращает
смешанный типgetOriginal()source public
getOriginal( string $property )
Возвращает значение исходного свойства по имени.
Параметры
- строка
$property - Имя свойства, для которого нужно получить исходное значение.
Возвращает
смешанный типИсключения
InvalidArgumentExceptionесли имя свойства пустое.
getOriginalValues()source public
getOriginalValues( )
Возвращает все исходные значения объекта.
Возвращает
массивgetSource()source public
getSource( )
Возвращает псевдоним репозитория, из которого был получен этот объект.
Возвращает
строкаgetVirtual()source public
getVirtual( )
Возвращает виртуальные свойства этого объекта.
Возвращает
массивhas()source public
has( string|array $property )
Возвращает, содержит ли этот объект свойство с именем $property, содержащее значение, отличное от null.
Пример:
$entity = new Entity(['id' => 1, 'name' => null]);
$entity->has('id'); // true
$entity->has('name'); // false
$entity->has('last_name'); // false Можно проверить несколько свойств, передав массив:
$entity->has(['name', 'last_name']);
Все свойства не должны быть null, чтобы получить истинное значение.
При проверке нескольких свойств, все свойства не должны быть null, чтобы вернуть true.
Параметры
- строка|массив
$property - Свойство или свойства для проверки.
Возвращает
логическое значениеhiddenProperties()source public
hiddenProperties( null|array $properties null )
Возвращает/устанавливает скрытые свойства этого объекта.
Если аргумент properties равен null, будут возвращены текущие скрытые свойства. В противном случае, скрытые свойства будут установлены.
Устарело
3.4.0 Используйте EntityTrait::setHidden() и EntityTrait::getHidden()Параметры
- null|массив
$propertiesнеобязательно null - Либо массив свойств для скрытия, либо null, чтобы получить свойства
Возвращает
массив|Cake\Datasource\EntityTrait$this
invalid()source public
invalid( string|array|null $field null , mixed|null $value null , boolean $overwrite false )
Отмечает поле как невалидное и непригодное для патчинга в объект.
Это полезно для пакетных операций, когда нужно получить исходное значение для сообщения об ошибке после патчинга. Это значение не может быть применено к объекту и просто копируется в свойство _invalid для отладки или записи в журнал.
Устарело
3.5 Используйте getInvalid()/getInvalidField()/setInvalid() вместо этого.Параметры
- строка|массив|null
$fieldнеобязательно null - Поле для получения невалидного значения или значение для установки.
- смешанный тип|null
$valueнеобязательно null - Невалидное значение, которое нужно установить для $field.
- логическое значение
$overwriteнеобязательно false - Признак перезаписи уже существующих значений для $field.
Возвращает
$this|смешанный тип
isAccessible()source public
isAccessible( string $property )
Проверяет, доступно ли свойство.
Пример:
$entity->isAccessible('id'); // Returns whether it can be set or not Параметры
- строка
$property - Имя свойства для проверки
Возвращает
логическое значениеisDirty()source public
isDirty( string|null $property null )
Проверяет, является ли объект грязным или грязным ли конкретное свойство.
Параметры
- строка|null
$propertyнеобязательно null - Поле для проверки статуса. Null для всего объекта.
Возвращает
логическое значениеЯвляется ли свойство изменённым
isNew()source public
isNew( boolean|null $new null )
Возвращает, был ли объект уже сохранён. Этот метод может вернуть null в случае, если нет предварительной информации о статусе объекта.
Если вызывается с логическим значением, оно установит известный статус этого экземпляра. True означает, что экземпляр ещё не сохранён в базе данных, false — что он уже сохранён.
Параметры
- логическое значение|null
$newнеобязательно null - true, если известно, что этот экземпляр ещё не был сохранён
Возвращает
логическое значениеБыл ли объект сохранён.
jsonSerialize()source public
jsonSerialize( )
Возвращает свойства, которые будут сериализованы как JSON.
Возвращает
массивoffsetExists()source public
offsetExists( mixed $offset )
Реализует isset($entity);
Параметры
- mixed
$offset - Смещение для проверки.
Возвращает
booleanУспех
offsetGet()source public
offsetGet( mixed $offset )
Реализует $entity[$offset];
Параметры
- mixed
$offset - Смещение для получения.
Возвращает
mixedoffsetSet()source public
offsetSet( mixed $offset , mixed $value )
Реализует $entity[$offset] = $value;
Параметры
- mixed
$offset - Смещение для установки.
- mixed
$value - Значение для установки.
offsetUnset()source public
offsetUnset( mixed $offset )
Реализует unset($result[$offset]);
Параметры
- mixed
$offset - Смещение для удаления.
set()source public
set( string|array $property , mixed $value null , array $options [] )
Устанавливает одно свойство внутри этого объекта.
Пример:
$entity->set('name', 'Andrew'); Также возможно массовое назначение нескольких свойств этому объекту с помощью одного вызова, передав хешированный массив в виде пар свойство => значение.
Пример:
$entity->set(['name' => 'andrew', 'id' => 1]); echo $entity->name // prints andrew echo $entity->id // prints 1
Иногда бывает удобно обойти функции-сеттеры в этом объекте при назначении свойств. Этого можно добиться, отключив опцию setter с помощью параметра $options:
$entity->set('name', 'Andrew', ['setter' => false]);
$entity->set(['name' => 'Andrew', 'id' => 1], ['setter' => false]); Массовое назначение следует рассматривать с осторожностью при приеме пользовательского ввода. По умолчанию объекты будут защищать все поля при назначении свойств в виде массива. Вы можете отключить защиту для одного вызова set с помощью опции guard:
$entity->set(['name' => 'Andrew', 'id' => 1], ['guard' => true]);
При назначении свойств по отдельности использовать опцию защиты не нужно:
// No need to use the guard option.
$entity->set('name', 'Andrew'); Параметры
- string|array
$property имя свойства для установки или список свойств с соответствующими значениями
- mixed
$valueoptional null Значение для установки в свойство или массив, если первый аргумент также является массивом, в этом случае будет обрабатываться как $options
- array
$optionsoptional [] параметры, которые будут использоваться для установки свойства. Разрешенные ключи параметров -
setterиguard
Возвращает
$this
Исключения
InvalidArgumentExceptionsetAccess()source public
setAccess( string|array $property , boolean $set )
Хранит информацию о том, можно ли изменить или установить значение свойства в этом объекте. Специальное свойство * также может быть помечено как доступное или защищенное, что означает, что любое другое указанное ранее свойство примет его значение. Например, $entity->setAccess('*', true) означает, что любое свойство, которое еще не указано, будет доступно по умолчанию.
Вы также можете вызвать этот метод с массивом свойств, в этом случае каждое из них примет значение доступности, указанное во втором аргументе.
Пример:
$entity->setAccess('id', true); // Mark id as not protected
$entity->setAccess('author_id', false); // Mark author_id as protected
$entity->setAccess(['id', 'user_id'], true); // Mark both properties as accessible
$entity->setAccess('*', false); // Mark all properties as protected Параметры
- string|array
$property - одно или список свойств, для изменения доступности
- boolean
$set true отмечает свойство как доступное, false отметит его как защищенное.
Возвращает
$this
setDirty()source public
setDirty( string $property , boolean $isDirty )
Устанавливает статус изменения для одного свойства.
Параметры
- string
$property - поле для установки или проверки статуса
- boolean
$isDirty true означает, что свойство было изменено, false - что оно не было изменено
Возвращает
$this
setError()source public
setError( string $field , string|array $errors , boolean $overwrite false )
Устанавливает ошибки для одного поля
Пример
// Sets the error messages for a single field
$entity->errors('salary', ['must be numeric', 'must be a positive number']); Параметры
- string
$field - Поле для получения ошибок или массив ошибок для установки.
- string|array
$errors - Ошибки, которые должны быть установлены для $field
- boolean
$overwriteoptional false - Перезаписывать ли существующие ошибки для $field
Возвращает
$this
setErrors()source public
setErrors( array $fields , boolean $overwrite false )
Устанавливает сообщения об ошибках для объекта.
Пример
// Sets the error messages for multiple fields at once $entity->errors(['salary' => ['message'], 'name' => ['another message']);
Параметры
- array
$fields - Массив ошибок для установки.
- boolean
$overwriteoptional false - Перезаписывать ли существующие ошибки для $fields
Возвращает
$this
setHidden()source public
setHidden( array $properties , boolean $merge false )
Устанавливает скрытые свойства.
Параметры
- array
$properties - Массив свойств, которые нужно скрыть из экспорта массива.
- boolean
$mergeoptional false - Объединить новые свойства с существующими. По умолчанию false.
Возвращает
$this
setInvalid()source public
setInvalid( array $fields , boolean $overwrite false )
Помечает поля как недопустимые и не подлежащие исправлениям в объекте.
Это полезно для пакетных операций, когда нужно получить исходное значение для сообщения об ошибке после исправления. Это значение не может быть исправлено в объекте и просто копируется в свойство _invalid для целей отладки или для возможности его регистрации.
Параметры
- array
$fields - Значения для установки.
- boolean
$overwriteoptional false - Перезаписывать ли существующие значения для $field.
Возвращает
$this
setInvalidField()source public
setInvalidField( string $field , mixed $value )
Помечает поле как недопустимое и не подлежащее исправлениям в объекте.
Параметры
- string
$field - Значение для установки.
- mixed
$value - Недопустимое значение, которое нужно установить для $field.
Возвращает
$this
setSource()source public
setSource( string $alias )
Устанавливает псевдоним источника
Параметры
- string
$alias - псевдоним хранилища
Возвращает
$this
setVirtual()source public
setVirtual( array $properties , boolean $merge false )
Устанавливает виртуальные свойства в этом объекте.
Параметры
- array
$properties - Массив свойств, которые нужно обработать как виртуальные.
- boolean
$mergeoptional false - Объединить новые свойства с существующими. По умолчанию false.
Возвращает
$this
source()source public
source( string|null $alias null )
Возвращает псевдоним хранилища, из которого был получен этот объект.
Если вызывается без аргументов, возвращает псевдоним хранилища, из которого был получен этот объект, если он известен.
Устарело
3.4.0 Используйте EntityTrait::getSource() и EntityTrait::setSource()Параметры
- string|null
$aliasoptional null - псевдоним хранилища
Возвращает
string|Cake\Datasource\EntityTrait$this
toArray()source public
toArray( )
Возвращает массив со всеми свойствами, которые были заданы для этого сущности
Этот метод также рекурсивно преобразует сущности, назначенные свойствам, в массивы.
Возвращает
arrayunsetProperty()source public
unsetProperty( string|array $property )
Удаляет свойство или список свойств из этой сущности
Примеры:
$entity->unsetProperty('name');
$entity->unsetProperty(['name', 'last_name']); Параметры
- string|array
$property - Свойство для удаления.
Возвращает
$this
virtualProperties()source public
virtualProperties( null|array $properties null )
Получить/установить виртуальные свойства этой сущности.
Если аргумент properties равен null, будут возвращены текущие виртуальные свойства. В противном случае виртуальные свойства будут установлены.
Устарело
3.4.0 Используйте EntityTrait::getVirtual() и EntityTrait::setVirtual()Параметры
- null|array
$propertiesнеобязательно null - Массив свойств, которые следует рассматривать как виртуальные, или null для получения свойств
Возвращает
array|Cake\Datasource\EntityTrait$this
visibleProperties()source public
visibleProperties( )
Получить список видимых свойств.
Список видимых свойств включает все стандартные свойства плюс виртуальные свойства минус скрытые свойства.
Возвращает
arrayСписок свойств, которые «видимы» во всех представлениях.
Подробное описание свойств
$_accessiblesource
protected array
Карта свойств в этой сущности, которые можно безопасно назначить; каждое имя свойства указывает на булево значение, обозначающее его статус. Пустой массив означает, что нет доступных свойств.
Также можно сопоставить специальное свойство «*», что означает, что любое другое свойство, не определенное в карте, будет принимать своё значение. Например, '\*' => true означает, что любое свойство, не определённое в карте, будет по умолчанию доступно
['*' => true]
$_classNamesource
protected string
Содержит имя класса для объекта экземпляра
Устарело
3.2 Это поле больше не используется$_dirtysource
protected array
Содержит список свойств, которые были изменены или добавлены после первоначального создания этого объекта.
[]
$_hiddensource
protected array
Список имён свойств, которые не должны включаться в JSON или массивы, представляющие эту сущность.
[]
$_invalidsource
protected array
Список недопустимых полей и их данных для ошибок при валидации/патчинге
[]
$_newsource
protected boolean
Указывает, сохранена ли эта сущность или нет. Сущности по умолчанию предполагают, что они новые. Вы можете использовать Table::persisted(), чтобы установить флаг new для сущности на основе записей в базе данных.
true
$_originalsource
protected array
Содержит все изменённые свойства и их исходные значения для этой сущности
[]
$_virtualsource
protected array
Список вычисленных или виртуальных полей, которые должны включаться в JSON или массивы, представляющие эту сущность. Если поле присутствует как в _hidden, так и в _virtual, оно не будет отображаться в массиве/JSON-представлении сущности.
[]
© 2005–2018 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/3.5/class-Cake.Datasource.EntityTrait.html