Spec-Zone.ru › CakePHP 4.4

Class TreeBehavior

Делает таблицу, к которой это прикреплено, поведением типа вложенного набора и предоставляет методы для управления и получения информации из производной иерархической структуры.

Таблицы, к которым прикреплено это поведение, должны иметь столбец, ссылающийся на родительскую строку, и ещё два числовых столбца (lft и rght), где неявный порядок будет кэшироваться.

Для получения дополнительной информации о том, что такое вложенный набор и как он работает, обратитесь к https://www.sitepoint.com/hierarchical-data-database-2/

Пространство имён: Cake\ORM\Behavior

Краткое описание свойств

  • $_config protected
    array<string, mixed>

    Конфигурация во время выполнения

  • $_configInitialized protected
    bool

    Указывает, была ли конфигурация уже настроена по умолчанию

  • $_defaultConfig protected
    array<string, mixed>

    Конфигурация по умолчанию

  • $_primaryKey protected
    string

    Кэшированная копия первого столбца первичного ключа таблицы.

  • $_reflectionCache protected static
    array<string, array>

    Кэш отражающего метода для поведений.

  • $_table protected
    Cake\ORM\Table

    Экземпляр таблицы.

Краткое описание методов

  • __construct() public

    Конструктор

  • _configDelete() protected

    Удаляет один ключ конфигурации.

  • _configRead() protected

    Считывает ключ конфигурации.

  • _configWrite() protected

    Записывает ключ конфигурации.

  • _ensureFields() protected

    Обеспечивает, что предоставленный объект содержит непустые значения для полей left и right.

  • _getMax() protected

    Возвращает максимальное значение индекса в таблице.

  • _getNode() protected

    Возвращает один узел из дерева по его первичному ключу.

  • _getPrimaryKey() protected

    Возвращает строковое значение, представляющее первичный ключ присоединённой таблицы.

  • _moveDown() protected

    Вспомогательная функция, используемая с фактическим кодом для moveDown.

  • _moveUp() protected

    Вспомогательная функция, используемая с фактическим кодом для moveUp.

  • _recoverTree() protected

    Рекурсивный метод, используемый для восстановления одного уровня дерева.

  • _reflectionCache() protected

    Получает методы, реализованные этим поведением.

  • _removeFromTree() protected

    Вспомогательная функция, содержащая фактический код для removeFromTree

  • _resolveMethodAliases() protected

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

  • _scope() protected

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

  • _setAsRoot() protected

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

  • _setChildrenLevel() protected

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

  • _setParent() protected

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

  • _sync() protected

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

  • _unmarkInternalTree() protected

    Вспомогательный метод, используемый для изменения знака левой и правой колонок, которые меньше 0. Они были установлены в отрицательные значения ранее, чтобы их абсолютное значение не менялось во время выполнения других преобразований дерева.

  • afterSave() public

    Слушатель после сохранения.

  • beforeDelete() public

    Также удаляет узлы в поддереве сущности, подлежащей удалению

  • beforeSave() public

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

  • childCount() public

    Получить количество дочерних узлов.

  • configShallow() public

    Объединяет предоставленную конфигурацию с существующей конфигурацией. В отличие от config(), который выполняет рекурсивное объединение для вложенных ключей, этот метод выполняет простое объединение.

  • findChildren() public

    Получить дочерние узлы текущей модели

  • findPath() public

    Пользовательский метод поиска, который можно использовать для возврата списка узлов от корня до конкретного узла в дереве. Этот пользовательский поиск требует, чтобы ключ «for» был передан в опциях, содержащих идентификатор узла, для которого требуется получить путь.

  • findTreeList() public

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

  • formatTreeList() public

    Форматирует запрос в виде плоского списка, где ключи — первичный ключ таблицы, а значения — поле отображения для таблицы. Значения имеют префиксы, чтобы визуально указать относительную глубину в дереве.

  • getConfig() public

    Возвращает конфигурацию.

  • getConfigOrFail() public

    Возвращает конфигурацию для данного ключа.

  • getLevel() public

    Возвращает уровень вложенности узла в дереве.

  • getTable() public deprecated

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

  • implementedEvents() public

    Получает обратные вызовы модели, которые интересуют данное поведение.

  • implementedFinders() public

    implementedFinders

  • implementedMethods() public

    implementedMethods

  • initialize() public

    Метод инициализации конструктора.

  • moveDown() public

    Изменяет порядок узла без изменения родителя.

  • moveUp() public

    Изменяет порядок узла без изменения родительского элемента.

  • recover() public

    Восстанавливает значения столбцов lft и right из иерархии, определенной столбцом родителя.

  • removeFromTree() public

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

  • setConfig() public

    Устанавливает конфигурацию.

  • table() public

    Получить экземпляр таблицы, к которому привязано это поведение.

  • verifyConfig() public

    verifyConfig

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

__construct() public

__construct(Cake\ORM\Table $table, array<string, mixed> $config = [])

Конструктор

Объединяет конфигурацию с настройками по умолчанию и сохраняет в свойстве config.

Параметры

Cake\ORM\Table $table

Таблица, к которой прикреплено данное поведение.

array<string, mixed> $config необязательно

Настройка для данного поведения.

_configDelete() protected

_configDelete(string $key): void

Удаляет один ключ конфигурации.

Параметры

string $key

Ключ для удаления.

Возвращает

void

Исключения

Cake\Core\Exception\CakeException
при попытке перезаписи существующей конфигурации

_configRead() protected

_configRead(string|null $key): mixed

Читает ключ конфигурации.

Параметры

string|null $key

Ключ для чтения.

Возвращает

mixed

_configWrite() protected

_configWrite(array<string, mixed>|string $key, mixed $value, string|bool $merge = false): void

Записывает ключ конфигурации.

Параметры

array<string, mixed>|string $key

Ключ, в который нужно записать.

mixed $value

Значение для записи.

string|bool $merge необязательно

true для рекурсивного объединения, 'shallow' для простого объединения, false для перезаписи, по умолчанию false.

Возвращает

void

Исключения

Cake\Core\Exception\CakeException
при попытке перезаписи существующей конфигурации

_ensureFields() protected

_ensureFields(Cake\Datasource\EntityInterface $entity): void

Обеспечивает, что предоставленный объект содержит непустые значения для полей слева и справа

Параметры

Cake\Datasource\EntityInterface $entity

Объект, для которого нужно обеспечить поля

Возвращает

void

_getMax() protected

_getMax(): int

Возвращает максимальное значение индекса в таблице.

Возвращает

int

_getNode() protected

_getNode(mixed $id): Cake\Datasource\EntityInterface

Возвращает один узел из дерева по его первичному ключу

Параметры

mixed $id

Идентификатор записи.

Возвращает

Cake\Datasource\EntityInterface

Выбрасывает

Cake\Datasource\Exception\RecordNotFoundException
При отсутствии узла

_getPrimaryKey() protected

_getPrimaryKey(): string

Возвращает единственное строковое значение, представляющее первичный ключ присоединённой таблицы

Возвращает

string

_moveDown() protected

_moveDown(Cake\Datasource\EntityInterface $node, int|true $number): Cake\Datasource\EntityInterface

Вспомогательная функция, используемая с фактическим кодом для moveDown

Параметры

Cake\Datasource\EntityInterface $node

Узел, который нужно переместить

int|true $number

Количество позиций для перемещения узла или true для перемещения в последнюю позицию

Возвращает

Cake\Datasource\EntityInterface

Выбрасывает

Cake\Datasource\Exception\RecordNotFoundException
При отсутствии узла

_moveUp() protected

_moveUp(Cake\Datasource\EntityInterface $node, int|true $number): Cake\Datasource\EntityInterface

Вспомогательная функция, используемая с фактическим кодом для moveUp

Параметры

Cake\Datasource\EntityInterface $node

Узел, который нужно переместить

int|true $number

Количество позиций для перемещения узла или true для перемещения в первую позицию

Возвращает

Cake\Datasource\EntityInterface

Выбрасывает

Cake\Datasource\Exception\RecordNotFoundException
При отсутствии узла

_recoverTree() protected

_recoverTree(int $lftRght = 1, mixed $parentId = null, int $level = 0): int

Рекурсивный метод, используемый для восстановления одного уровня дерева

Параметры

int $lftRght optional

Начальное значение lft/rght

mixed $parentId optional

Идентификатор родительского узла восстанавливаемого уровня

int $level optional

Уровень узла

Возвращает

int

_reflectionCache() protected

_reflectionCache(): array

Получает методы, реализованные этим поведением

Использует метод implementedEvents() для исключения методов обратного вызова. Методы, начинающиеся с _ будут проигнорированы, как и методы, объявленные в Cake\ORM\Behavior

Возвращает

array

Выбрасывает

ReflectionException

_removeFromTree() protected

_removeFromTree(Cake\Datasource\EntityInterface $node): Cake\Datasource\EntityInterface|false

Вспомогательная функция, содержащая фактический код для removeFromTree

Параметры

Cake\Datasource\EntityInterface $node

Узел, который нужно удалить из дерева

Возвращает

Cake\Datasource\EntityInterface|false

_resolveMethodAliases() protected

_resolveMethodAliases(string $key, array<string, mixed> $defaults, array<string, mixed> $config): array

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

Параметры

string $key

Ключ для фильтрации.

array<string, mixed> $defaults

Отображение по умолчанию для методов.

array<string, mixed> $config

Настроенные отображения для методов.

Возвращает

array

_scope() protected

_scope(Cake\ORM\Query $query): Cake\ORM\Query

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

Параметры

Cake\ORM\Query $query

Запрос для изменения

Возвращает

Cake\ORM\Query

_setAsRoot() protected

_setAsRoot(Cake\Datasource\EntityInterface $entity): void

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

Параметры

Cake\Datasource\EntityInterface $entity

Объект, который нужно установить в качестве нового корня

Возвращает

void

_setChildrenLevel() protected

_setChildrenLevel(Cake\Datasource\EntityInterface $entity): void

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

Параметры

Cake\Datasource\EntityInterface $entity

Объект, потомки которого нужно обновить.

Возвращает

void

_setParent() protected

_setParent(Cake\Datasource\EntityInterface $entity, mixed $parent): void

Устанавливает правильные значения left и right для переданного объекта, чтобы его можно было обновить до нового родителя. Также создаёт пространство в дереве, чтобы перемещение узла можно было выполнить без нарушения структуры.

Параметры

Cake\Datasource\EntityInterface $entity

Объект, который нужно переместить к новому родителю

mixed $parent

идентификатор родительского объекта

Возвращает

void

Исключения

RuntimeException
если родительский объект для переданного объекта некорректен

_sync() protected

_sync(int $shift, string $dir, string $conditions, bool $mark = false): void

Вспомогательная функция, используемая для автоматического изменения значений столбцов left и right на определённую величину, соответствующую переданным условиям.

Параметры

int $shift

значение, используемое для изменения столбцов left и right

string $dir

Оператор для изменения значения (+/-)

string $conditions

SQL-фрагмент, используемый для сравнения left или right с ним.

bool $mark необязательно

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

Возвращает

void

_unmarkInternalTree() protected

_unmarkInternalTree(): void

Вспомогательный метод, используемый для изменения знака столбцов left и right, которые меньше 0. Они были установлены в отрицательные значения ранее, чтобы их абсолютное значение не менялось при выполнении других преобразований дерева.

Возвращает

void

afterSave() public

afterSave(Cake\Event\EventInterface $event, Cake\Datasource\EntityInterface $entity): void

Слушатель после сохранения.

Управляет обновлением уровня потомков текущей сохранённой сущности.

Параметры

Cake\Event\EventInterface $event

Событие afterSave, которое было запущено

Cake\Datasource\EntityInterface $entity

сущность, которая будет сохранена

Возвращает

void

beforeDelete() public

beforeDelete(Cake\Event\EventInterface $event, Cake\Datasource\EntityInterface $entity): void

Также удаляет узлы в поддереве сущности, подлежащей удалению

Параметры

Cake\Event\EventInterface $event

Событие beforeDelete, которое было запущено

Cake\Datasource\EntityInterface $entity

Сущность, которая будет сохранена

Возвращает

void

beforeSave() public

beforeSave(Cake\Event\EventInterface $event, Cake\Datasource\EntityInterface $entity): void

Слушатель перед сохранением. Прозрачно управляет установкой полей lft и rght, если поле parent включено в параметры для сохранения.

Параметры

Cake\Event\EventInterface $event

Событие beforeSave, которое было запущено

Cake\Datasource\EntityInterface $entity

сущность, которая будет сохранена

Возвращает

void

Исключения

RuntimeException
если родитель для установки узла недействителен

childCount() public

childCount(Cake\Datasource\EntityInterface $node, bool $direct = false): int

Получить количество дочерних узлов.

Параметры

Cake\Datasource\EntityInterface $node

Сущность, для которой нужно посчитать потомков

bool $direct optional

Нужно ли считать все узлы в поддереве или только непосредственных потомков

Возвращает

int

configShallow() public

configShallow(array<string, mixed>|string $key, mixed|null $value = null): $this

Объединить предоставленные настройки с существующими настройками. В отличие от config(), который выполняет рекурсивное объединение для вложенных ключей, этот метод выполняет простое объединение.

Установка определенного значения:

$this->configShallow('key', $value);

Установка вложенного значения:

$this->configShallow('some.nested.key', $value);

Обновление нескольких настроек конфигурации одновременно:

$this->configShallow(['one' => 'value', 'another' => 'value']);

Параметры

array<string, mixed>|string $key

Ключ для установки или полный массив конфигураций.

mixed|null $value optional

Значение для установки.

Возвращает

$this

findChildren() public

findChildren(Cake\ORM\Query $query, array<string, mixed> $options): Cake\ORM\Query

Получить дочерние узлы текущей модели

Доступные параметры:

  • for: Идентификатор записи для чтения.
  • direct: Булево значение, указывает, возвращать только прямых (true) или все (false) потомков, по умолчанию false (все потомки).

Если параметр direct установлен в true, возвращаются только непосредственные потомки (на основе поля parent_id)

Параметры

Cake\ORM\Query $query

Запрос.

array<string, mixed> $options

Массив параметров, как описано выше

Возвращает

Cake\ORM\Query

Выбрасывает

InvalidArgumentException
Если ключ 'for' не передан в $options

findPath() public

findPath(Cake\ORM\Query $query, array<string, mixed> $options): Cake\ORM\Query

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

Параметры

Cake\ORM\Query $query

Построенный запрос для изменения

array<string, mixed> $options

Список параметров для запроса

Возвращает

Cake\ORM\Query

Выбрасывает

InvalidArgumentException
Если ключ 'for' отсутствует в параметрах

findTreeList() public

findTreeList(Cake\ORM\Query $query, array<string, mixed> $options): Cake\ORM\Query

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

Параметры

  • keyPath: Путь через точки к полю, которое будет использоваться в качестве ключа массива, или замыкание для возврата ключа из предоставленной строки.
  • valuePath: Путь через точки к полю, которое будет использоваться в качестве значения массива, или замыкание для возврата значения из предоставленной строки.
  • spacer: Строка, используемая в качестве префикса для обозначения глубины в дереве для каждого элемента.

Параметры

Cake\ORM\Query $query

Запрос.

array<string, mixed> $options

Массив параметров, как описано выше.

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

Cake\ORM\Query

formatTreeList() public

formatTreeList(Cake\ORM\Query $query, array<string, mixed> $options = []): Cake\ORM\Query

Форматирует запрос в виде плоского списка, где ключи — первичный ключ таблицы, а значения — поле отображения для таблицы. Значения добавляются префиксы, чтобы визуально указать относительную глубину в дереве.

Параметры

  • keyPath: Путь через точки к полю, которое будет использоваться в качестве ключа результата массива, или замыкание для возврата ключа из предоставленной строки.
  • valuePath: Путь через точки к полю, которое будет использоваться в качестве значения массива, или замыкание для возврата значения из предоставленной строки.
  • spacer: Строка, используемая в качестве префикса для обозначения глубины в дереве для каждого элемента.

Параметры

Cake\ORM\Query $query

Объект запроса для форматирования.

array<string, mixed> $options optional

Массив параметров, как описано выше.

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

Cake\ORM\Query

getConfig() public

getConfig(string|null $key = null, mixed $default = null): mixed

Возвращает конфигурацию.

Использование

Чтение всей конфигурации:

$this->getConfig();

Чтение определенного значения:

$this->getConfig('key');

Чтение вложенного значения:

$this->getConfig('some.nested.key');

Чтение со значением по умолчанию:

$this->getConfig('some-key', 'default-value');

Параметры

string|null $key необязательный

Ключ для получения или null для всей конфигурации.

mixed $default необязательный

Возвращаемое значение, если ключ не существует.

Возвращает

mixed

getConfigOrFail() public

getConfigOrFail(string $key): mixed

Возвращает конфигурацию для данного ключа.

Значение конфигурации для этого ключа должно существовать, оно никогда не может быть null.

Параметры

string $key

Ключ для получения.

Возвращает

mixed

Исключения

InvalidArgumentException

getLevel() public

getLevel(Cake\Datasource\EntityInterface|string|int $entity): int|false

Возвращает уровень вложенности узла в дереве.

Параметры

Cake\Datasource\EntityInterface|string|int $entity

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

Возвращает

int|false

getTable() public

getTable(): Cake\ORM\Table

Получает экземпляр таблицы, к которому привязано это поведение.

Возвращает

Cake\ORM\Table

implementedEvents() public

implementedEvents(): array<string, mixed>

Получает обратные вызовы модели, в которых этот компонент заинтересован.

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

Переопределите этот метод, если вам нужно добавить неочевидные обработчики событий. Или если вы хотите, чтобы ваш компонент прослушивал нестандартные события.

Возвращает

array<string, mixed>

implementedFinders() public

implementedFinders(): array

implementedFinders

Предоставляет отображение псевдоним->имя_метода для наборов реализованных поисковиков. Пример:

[
   'this' => 'findThis',
   'alias' => 'findMethodName'
 ]

В приведенном выше примере вызов $table->find('this') вызовет $behavior->findThis(), а вызов $table->find('alias') вызовет $behavior->findMethodName()

Рекомендуется (но необязательно) определять implementedFinders в свойстве config дочерних классов, чтобы не было необходимости использовать рефлексию для получения списка доступных методов. Смотрите примеры в базовых компонентах.

Возвращает

array

Выбрасывает

ReflectionException

implementedMethods() public

implementedMethods(): array

implementedMethods

Предоставляет отображение псевдоним->имя_метода для наборов реализованных методов. Пример:

[
   'method' => 'method',
   'aliasedMethod' => 'somethingElse'
 ]

В приведенном выше примере вызов $table->method() вызовет $behavior->method(), а вызов $table->aliasedMethod() вызовет $behavior->somethingElse()

Рекомендуется (но необязательно) определять implementedFinders в свойстве config дочерних классов, чтобы не было необходимости использовать рефлексию для получения списка доступных методов. Смотрите примеры в базовых компонентах.

Возвращает

array

Выбрасывает

ReflectionException

initialize() public

initialize(array<string, mixed> $config): void

Метод-обработчик конструктора.

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

Параметры

array<string, mixed> $config

Возвращает

void

moveDown() public

moveDown(Cake\Datasource\EntityInterface $node, int|true $number = 1): Cake\Datasource\EntityInterface|false

Переупорядочивает узел без изменения родителя.

Если узел является последним дочерним элементом или является узлом верхнего уровня без последующего узла, этот метод вернёт тот же узел без изменений.

Параметры

Cake\Datasource\EntityInterface $node

Узел, который нужно переместить

int|true $number optional

Количество позиций для перемещения узла или true для перемещения в последнюю позицию

Возвращает

Cake\Datasource\EntityInterface|false

Исключения

Cake\Datasource\Exception\RecordNotFoundException
Если узел не найден

moveUp() public

moveUp(Cake\Datasource\EntityInterface $node, int|true $number = 1): Cake\Datasource\EntityInterface|false

Переупорядочивает узел без изменения его родителя.

Если узел является первым дочерним элементом или является узлом верхнего уровня без предыдущего узла, этот метод вернёт тот же узел без изменений.

Параметры

Cake\Datasource\EntityInterface $node

Узел, который нужно переместить

int|true $number optional

Количество позиций для перемещения узла или true для перемещения в первую позицию

Возвращает

Cake\Datasource\EntityInterface|false

Исключения

Cake\Datasource\Exception\RecordNotFoundException
Если узел не найден

recover() public

recover(): void

Восстанавливает значения столбцов lft и right из иерархии, определённой столбцом родителя.

Возвращает

void

removeFromTree() public

removeFromTree(Cake\Datasource\EntityInterface $node): Cake\Datasource\EntityInterface|false

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

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

Параметры

Cake\Datasource\EntityInterface $node

Узел для удаления из дерева

Возвращает

Cake\Datasource\EntityInterface|false

setConfig() public

setConfig(array<string, mixed>|string $key, mixed|null $value = null, bool $merge = true): $this

Устанавливает конфигурацию.

Использование

Установка конкретного значения:

$this->setConfig('key', $value);

Установка вложенного значения:

$this->setConfig('some.nested.key', $value);

Обновление нескольких настроек конфигурации одновременно:

$this->setConfig(['one' => 'value', 'another' => 'value']);

Параметры

array<string, mixed>|string $key

Ключ для установки или полный массив конфигураций.

mixed|null $value optional

Значение для установки.

bool $merge optional

Производить рекурсивное слияние или перезаписывать существующую конфигурацию, по умолчанию — true.

Возвращает

$this

Выбрасывает

Cake\Core\Exception\CakeException
При попытке установить недопустимый ключ.

table() public

table(): Cake\ORM\Table

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

Возвращает

Cake\ORM\Table

verifyConfig() public

verifyConfig(): void

verifyConfig

Проверяет, что реализованные ключи содержат значения, указывающие на вызываемые функции.

Возвращает

void

Выбрасывает

Cake\Core\Exception\CakeException
если конфигурация неверна

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

$_config protected

Конфигурация во время выполнения

Тип

array<string, mixed>

$_configInitialized protected

Указывает, была ли конфигурация свойства уже настроена по умолчанию

Тип

bool

$_defaultConfig protected

Конфигурация по умолчанию

Эти значения объединяются с пользовательской конфигурацией при использовании данного поведения.

Тип

array<string, mixed>

$_primaryKey protected

Кэшированная копия первого столбца первичного ключа таблицы.

Тип

string

$_reflectionCache protected static

Кэш методов рефлексии для поведений.

Хранит отраженные методы + методы поиска по классам. Это предотвращает многократное отражение одного и того же класса в одном процессе.

Тип

array<string, array>

$_table protected

Экземпляр таблицы.

Тип

Cake\ORM\Table

© 2005–present 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/4.4/class-Cake.ORM.Behavior.TreeBehavior.html

Spec-Zone.ru

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