Spec-Zone.ru › CakePHP 3.3

Трейт EntityTrait

Сущность представляет собой строку одного результата из репозитория. Она предоставляет методы для получения и хранения свойств, связанных в этой строке.

Прямые пользователи

  • Cake\ORM\Entity
Пространство имён: Cake\Datasource
Расположение: Datasource/EntityTrait.php

Резюме свойств

  • $_accessible protected
    array

    Карта свойств в этой сущности, которые можно безопасно назначить, каждое имя свойства указывает на булево значение, показывающее его состояние. Пустой массив означает, что нет доступных свойств.

  • $_accessors protected static
    array
    Хранит кэшированный список геттеров/сеттеров на класс
  • $_className protected
    string
    Хранит имя класса для объекта экземпляра
  • $_dirty protected
    array

    Хранит список свойств, которые были изменены или добавлены после того, как этот объект был первоначально создан.

  • $_errors protected
    array
    Список ошибок на поле, как хранится в этом объекте
  • $_hidden protected
    array

    Список имён свойств, которые не должны включаться в JSON или массивовые представления этой сущности.

  • $_invalid protected
    array
    Список недопустимых полей и их данных для ошибок при валидации/патчинге
  • $_new protected
    boolean

    Указывает, сохранена ли эта сущность. Сущности по умолчанию предполагают, что они новые. Можно использовать Table::persisted(), чтобы установить флаг «новый» для сущности на основе записей в базе данных.

  • $_original protected
    array
    Хранит все изменённые свойства и их исходные значения для этой сущности
  • $_properties protected
    array
    Хранит все свойства и их значения для этой сущности
  • $_registryAlias protected
    string
    Псевдоним репозитория, из которого пришла эта сущность
  • $_virtual protected
    array

    Список вычисляемых или виртуальных полей, которые должны быть включены в JSON или массивовые представления этой сущности. Если поле присутствует как в _hidden, так и в _virtual, поле не будет в массивовых/JSON версиях сущности.

Резюме методов

  • __debugInfo() public

    Возвращает массив, который можно использовать для описания внутреннего состояния этого объекта.

  • __get() public
    Магический геттер для доступа к свойствам, которые были установлены в этом объекте
  • __isset() public

    Возвращает, содержит ли этот объект свойство с именем $property, независимо от того, пусто оно или нет.

  • __set() public
    Магический сеттер для добавления или изменения свойства в этом объекте
  • __toString() public
    Возвращает строковое представление этого объекта в удобочитаемом формате.
  • __unset() public
    Удаляет свойство из этого объекта
  • _accessor() protected static

    Получить имя метода-аксессора Методы-аксессоры (доступны или нет) кэшируются в $_accessors

  • _nestedErrors() protected
    Вспомогательный метод для получения ошибок во вложенных объектах
  • _readError() protected
    Чтение ошибки(ок) из одного или нескольких объектов.
  • accessible() public

    Хранит информацию о том, можно ли изменить или установить значение свойства в этом объекте. Специальное свойство * также может быть помечено как доступное или защищенное, что означает, что любое другое указанное ранее свойство примет его значение. Например, $entity->accessible('*', true) означает, что любое свойство, которое еще не указано, будет доступно по умолчанию.

  • clean() public

    Очищает весь объект, что означает, что он будет выглядеть так, как будто никакие свойства не изменялись и не добавлялись. Это полезный вызов для первоначальной гидратации объекта

  • dirty() public

    Устанавливает статус «изменён» для отдельного свойства. Если вызывается без второго аргумента, возвращает, было ли свойство изменено после создания объекта.

  • errors() public

    Устанавливает сообщения об ошибках для поля или списка полей. При вызове без второго аргумента возвращает ошибки валидации для указанных полей. Если вызывается без аргументов, возвращает все сообщения об ошибках валидации, хранящиеся в этом объекте и любых других вложенных объектах.

  • extract() public

    Возвращает массив с запрошенными свойствами, хранящимися в этом объекте, индексированными по имени свойства

  • extractOriginal() public

    Возвращает массив с запрошенными исходными свойствами, хранящимися в этом объекте, индексированными по имени свойства.

  • extractOriginalChanged() public

    Возвращает массив только с исходными свойствами, хранящимися в этом объекте, индексированными по имени свойства.

  • get() public
    Возвращает значение свойства по имени
  • getOriginal() public
    Возвращает значение исходного свойства по имени
  • getOriginalValues() public
    Получает все исходные значения объекта.
  • has() public

    Возвращает, содержит ли этот объект свойство с именем $property, которое содержит ненулевое значение.

  • hiddenProperties() public
    Получение/установка скрытых свойств этого объекта.
  • invalid() 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
    Устанавливает одно свойство внутри этого объекта.
  • source() public
    Возвращает псевдоним репозитория, из которого был получен этот объект.
  • toArray() public

    Возвращает массив со всеми свойствами, которые были установлены для этого объекта

  • unsetProperty() public
    Удаляет свойство или список свойств из этого объекта
  • virtualProperties() public
    Получение/установка виртуальных свойств этого объекта.
  • visibleProperties() public
    Получение списка видимых свойств.

Детали методов

__debugInfo()source public

__debugInfo( )

Возвращает массив, который можно использовать для описания внутреннего состояния этого объекта.

Возвращает

array

__get()source public

__get( string $property )

Магический геттер для доступа к свойствам, которые были установлены в этом объекте

Параметры

string $property
Имя свойства для доступа

Возвращает

mixed

__isset()source public

__isset( string $property )

Возвращает, содержит ли этот объект свойство с именем $property, независимо от того, пусто оно или нет.

Параметры

string $property
Свойство для проверки.

Возвращает

boolean

См. также

\Cake\ORM\Entity::has()

__set()source public

__set( string $property , mixed $value )

Магический сеттер для добавления или изменения свойства в этом объекте

Параметры

string $property
Имя свойства для установки
mixed $value
Значение для установки свойства

__toString()source public

__toString( )

Возвращает строковое представление этого объекта в удобочитаемом формате.

Возвращает

string

__unset()source public

__unset( string $property )

Удаляет свойство из этого объекта

Параметры

string $property
Свойство для удаления

_accessor()source protected static

_accessor( string $property , string $type )

Получить имя метода-аксессора Методы-аксессоры (доступны или нет) кэшируются в $_accessors

Параметры

string $property
имя поля для получения имени метода-геттера
string $type
тип аксессора ('get' или 'set')

Возвращает

string
Имя метода или пустая строка (метод недоступен)

_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

Параметры

строка|массив $property
единственное или список свойств для изменения их доступности
булево|null $set необязательно null

true помечает свойство как доступное, false — как защищённое.

Возвращает


$this|bool

clean()source public

clean( )

Устанавливает всю сущность как чистую, что означает, что она будет отображаться как ни одно свойство не было изменено или добавлено. Это полезный вызов для начальной гидрации объекта

dirty()source public

dirty( string|null $property null , null|boolean $isDirty null )

Устанавливает состояние грязности одного свойства. Если вызывается без второго аргумента, возвращает, было ли свойство изменено или нет после создания объекта.

Если вызывается без аргументов, возвращает, есть ли в сущности грязные свойства

Параметры

строка|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']);

При использовании в качестве установщика этот метод вернёт экземпляр этой сущности для цепочки вызовов методов.

Параметры

строка|массив|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
если имя свойства пустое

getOriginal()source public

getOriginal( string $property )

Возвращает значение исходного свойства по имени

Параметры

строка $property
имя свойства, для которого необходимо извлечь исходное значение.

Возвращает

смешанное

Вызывает исключение

InvalidArgumentException
если имя свойства пустое.

getOriginalValues()source public

getOriginalValues( )

Получает все исходные значения сущности.

Возвращает

массив

has()source public

has( string|array $property )

Возвращает, содержит ли эта сущность свойство с именем $property, содержащее ненулевое значение.

Пример:

$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, будут возвращены текущие скрытые свойства. В противном случае скрытые свойства будут установлены.

Параметры

null|массив $properties необязательно null
либо массив свойств для скрытия, либо null для получения свойств

Возвращает

массив|Cake\Datasource\EntityTrait
$this
END_OF_DOCUMENT_MARKER

invalid()source public

invalid( string|array|null $field null , mixed|null $value null , boolean $overwrite false )

Устанавливает поле как некорректное и не подлежащее исправлениям в сущности.

Это полезно для пакетных операций, когда нужно получить исходное значение для сообщения об ошибке после исправления. Это значение не может быть исправлено в сущности и просто копируется в свойство _invalid для отладки или для возможности его регистрации.

Параметры

строка|массив|null $field необязательно null
Поле, для которого нужно получить некорректное значение, или значение для установки.
смешанное|null $value необязательно null
Некорректное значение, которое должно быть установлено для $field.
логическое $overwrite необязательно false
Заменять ли существующие значения для $field.

Возвращаемое значение


$this|смешанное

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);

Параметры

смешанное $offset
Смещение для проверки.

Возвращаемое значение

логическое
Успех

offsetGet()source public

offsetGet( mixed $offset )

Реализует $entity[$offset];

Параметры

смешанное $offset
Смещение для получения.

Возвращаемое значение

смешанное

offsetSet()source public

offsetSet( mixed $offset , mixed $value )

Реализует $entity[$offset] = $value;

Параметры

смешанное $offset
Смещение для установки.
смешанное $value
Значение для установки.

offsetUnset()source public

offsetUnset( mixed $offset )

Реализует unset($result[$offset]);

Параметры

смешанное $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]);

Массовое присваивание следует использовать осторожно при приёме пользовательского ввода. По умолчанию сущности будут защищать все поля при массовом присваивании свойств. Вы можете отключить эту защиту для отдельного вызова установки с помощью опции guard.

$entity->set(['name' => 'Andrew', 'id' => 1], ['guard' => true]);

Вам не нужно использовать опцию защиты при присваивании свойств по отдельности.

// No need to use the guard option.
$entity->set('name', 'Andrew');

Параметры

строка|массив $property

имя свойства для установки или список свойств со значениями.

смешанное $value необязательно null

Значение для установки в свойство или массив, если первый аргумент также массив, в этом случае будет обработан как $options.

массив $options необязательно []

опции, используемые для установки свойства. Допустимые ключи опций - setter и guard

Возвращаемое значение


$this

Выбрасывает

InvalidArgumentException

source()source public

source( string|null $alias null )

Возвращает псевдоним репозитория, из которого была получена эта сущность.

Если вызов без аргументов, возвращает псевдоним репозитория, из которого была получена сущность, если он известен.

Параметры

строка|null $alias необязательно null
псевдоним репозитория

Возвращаемое значение

строка|Cake\Datasource\EntityTrait
$this

toArray()source public

toArray( )

Возвращает массив со всеми свойствами, которые были установлены в этой сущности.

Этот метод также рекурсивно преобразует сущности, назначенные свойствам, в массивы.

Возвращаемое значение

массив

unsetProperty()source public

unsetProperty( string|array $property )

Удаляет свойство или список свойств из этой сущности.

Примеры:

$entity->unsetProperty('name');
$entity->unsetProperty(['name', 'last_name']);

Параметры

строка|массив $property
Свойство для удаления.

Возвращаемое значение


$this

virtualProperties()source public

virtualProperties( null|array $properties null )

Получение/установка виртуальных свойств этой сущности.

Если аргумент properties равен null, возвращаются текущие виртуальные свойства. В противном случае устанавливаются виртуальные свойства.

Параметры

null|массив $properties необязательно null
Массив свойств, которые нужно обрабатывать как виртуальные, или null для получения свойств

Возвращаемое значение

массив|Cake\Datasource\EntityTrait
$this

visibleProperties()source public

visibleProperties( )

Получить список видимых свойств.

Список видимых свойств включает все стандартные свойства, плюс виртуальные свойства минус скрытые свойства.

Возвращаемое значение

массив

Список свойств, которые «видимы» во всех представлениях.


Подробное описание свойств

$_accessiblesource

protected массив

Карта свойств в этой сущности, которые можно безопасно назначить; каждое имя свойства указывает на булево значение, обозначающее его статус. Пустой массив означает, что нет доступных свойств.

Специальное свойство '*' также может быть отображено, что означает, что любое другое свойство, не определённое в карте, будет принимать значение по умолчанию. Например, '\*' => true означает, что любое свойство, не определённое в карте, будет доступно по умолчанию.

['*' => true]

$_accessorssource

protected static массив

Хранит кэшированный список геттеров/сеттеров на класс

[]

$_classNamesource

protected строка

Содержит имя класса для объекта экземпляра.

Устаревшее

3.2 Это поле больше не используется

$_dirtysource

protected массив

Хранит список свойств, которые были изменены или добавлены после первоначального создания этого объекта.

[]

$_errorssource

protected массив

Список ошибок по полям, хранящимся в этом объекте

[]

$_hiddensource

protected массив

Список имён свойств, которые не должны включаться в JSON или массивы представлений этого объекта.

[]

$_invalidsource

protected массив

Список невалидных полей и их данных для ошибок при валидации/патчинге

[]

$_newsource

protected логическое

Указывает, является ли этот объект ещё не сохранённым. Объекты по умолчанию предполагаются новыми. Вы можете использовать Table::persisted() для установки флага нового объекта на основе записей в базе данных.

true

$_originalsource

protected массив

Содержит все свойства, которые были изменены, и их исходные значения для этого объекта

[]

$_propertiessource

protected массив

Содержит все свойства и их значения для этого объекта

[]

$_registryAliassource

protected строка

Псевдоним репозитория, из которого произошёл этот объект

$_virtualsource

protected массив

Список вычисленных или виртуальных полей, которые должны включаться в JSON или массивы представлений этого объекта. Если поле присутствует как в _hidden, так и в _virtual, поле не будет включено в массив/json версии объекта.

[]

© 2005–2017 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.3/class-Cake.Datasource.EntityTrait.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API