Класс ObjectCollection
Работает со сборками объектов. Ведёт реестры этих объектов, загружает и создаёт новые объекты, а также вызывает обратные вызовы. Каждый подкласс должен реализовать собственную функциональность load().
Все основные подклассы ObjectCollection по соглашению загруженные объекты хранятся в $this->_loaded. Активные объекты хранятся в $this->_enabled. Кроме того, все они поддерживают опцию enabled, которая управляет состоянием включения/выключения объекта при загрузке.
Непосредственные известные подклассы
BehaviorCollection, ComponentCollection, HelperCollection, LogEngineCollection, TaskCollectionПакет: Cake\Utility
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT License
С момента: CakePHP(tm) v 2.0
Расположено в Cake/Utility/ObjectCollection.php
Подробное описание метода
__getsource public
__get( string $name )
Предоставляет общедоступный чтение доступа к загруженным объектам
Параметры
- строка
$name - Имя свойства для чтения
Возвращает
mixedсмешанный тип
__issetsource public
__isset( string $name )
Предоставляет доступ isset к _loaded
Параметры
- строка
$name - Имя проверяемого объекта.
Возвращает
booleanбулево
attachedsource public
attached( string $name null )
Получает список присоединённых объектов или, является ли данный объект присоединённым
Устарело
3.0.0 Будет удалено в 3.0. Используйте вместо него loaded.Параметры
- строка
$nameнеобязательно null - Необязательно. Имя объекта, состояние которого нужно проверить. Если опущено, возвращает массив текущих присоединённых объектов
Возвращает
mixedЕсли $name указан, возвращает булево значение состояния соответствующего объекта. В противном случае возвращает массив всех присоединённых объектов.
disablesource public
disable( string|array $name )
Отключает обратные вызовы для объекта или массива объектов. Общедоступные методы объекта по-прежнему вызываемы как обычно.
Параметры
- строка|массив
$name - Имя объекта(ов) в формате CamelCase (строка или массив) для отключения
enablesource public
enable( string|array $name , boolean $prioritize true )
Включает обратные вызовы для объекта или массива объектов
Параметры
- строка|массив
$name - Имя объекта(ов) в формате CamelCase (строка или массив) для включения
- булево
$prioritizeнеобязательно true - Устанавливает приоритет списка включенных объектов после включения объекта(ов)
enabledsource public
enabled( string $name null )
Получает список активных объектов или текущее состояние отдельного объекта
Параметры
- строка
$nameнеобязательно null - Необязательно. Имя объекта, состояние которого нужно проверить. Если опущено, возвращает массив текущих активных объектов
Возвращает
mixedЕсли $name указан, возвращает булево значение состояния соответствующего объекта. В противном случае возвращает массив всех активных объектов.
loadsource abstract public
load( string $name , array $options array() )
Загружает новый объект в сборку. Может вызывать различные исключения
Реализации этого класса поддерживают флаг $options['enabled'], который включает/отключает загруженный объект.
Параметры
- строка
$name - Имя загружаемого объекта.
- массив
$optionsнеобязательно array() - Массив конфигурационных параметров для создаваемого объекта.
Возвращает
objectсозданный объект
loadedsource public
loaded( string $name null )
Получает список загруженных объектов или, является ли данный объект загруженным
Параметры
- строка
$nameнеобязательно null - Необязательно. Имя объекта, состояние которого нужно проверить. Если опущено, возвращает массив текущих загруженных объектов
Возвращает
mixedЕсли $name указан, возвращает булево значение состояния соответствующего объекта. В противном случае возвращает массив всех загруженных объектов.
normalizeObjectArraysource public static
normalizeObjectArray( array $objects )
Нормализует массив объектов, создаёт массив, который облегчает ленивую загрузку
Параметры
- массив
$objects - Массив дочерних объектов для нормализации.
Возвращает
arrayМассив нормализованных объектов.
prioritizesource public
prioritize( )
Устанавливает приоритет списка включённых объектов
Возвращает
arrayСписок объектов с приоритетом
setsource public
set( string $name null , Object $object null )
Добавляет или перезаписывает созданный объект в сборку
Параметры
- строка
$nameнеобязательно null - Имя объекта
-
Object$objectнеобязательно null - Объект для использования
Возвращает
arrayЗагруженные объекты
setPrioritysource public
setPriority( string|array $name , integer|null $priority null )
Устанавливает приоритет для объекта или массива объектов
Параметры
- строка|массив
$name - Имя объекта(ов) в формате CamelCase (строка или массив) для включения. Если строка, используется второй параметр $priority, иначе должен быть ассоциативный массив с именами объектов в качестве ключей и приоритетами в качестве значений.
- целое число|null
$priorityнеобязательно null - Целое число приоритет или null для значения по умолчанию
triggersource public
trigger( string|CakeEvent $callback , array $params array() , array $options array() )
Вызвать метод обратного вызова для каждого объекта в коллекции. Используется для вызова методов объектов в коллекции. Методы будут вызваны в том порядке, в котором они были присоединены.
Параметры
-
breakOnУстановите значение или значения, на которых должна остановиться передача обратного вызова. Может быть скалярным значением или массивом значений, на которых происходит остановка. По умолчаниюfalse. -
breakУстановите в значение true, чтобы включить возможность прерывания. При прерывании триггера будет возвращено последнее возвращённое значение. Если используется в сочетании сcollectReturn, будут возвращены собранные результаты. По умолчаниюfalse. -
collectReturnУстановите в значение true, чтобы собрать возвращаемые значения каждого объекта в массив. Этот массив значений возврата будет возвращён вызовом trigger(). По умолчаниюfalse. -
modParamsПозволяет каждому объекту, для которого вызывается обратный вызов, изменять параметры для следующего объекта. Установка modParams в целое значение позволит вам изменить параметр с этим индексом. Любое ненулевое значение будет изменять параметр с указанным индексом. По умолчанию false.
Параметры
- string|
CakeEvent$callback - Метод, который нужно вызвать для всех объектов. Предполагается, что все объекты реализуют метод, который вызывается. Если предоставлен экземпляр CakeEvent, тогда имя события будет обработано для получения имени обратного вызова. Это делается путём получения последнего слова после точки в имени события (например,
Model.afterSaveсобытие вызовет обратный вызовafterSave). - array
$paramsнеобязательно array() - Массив параметров для вызываемого обратного вызова.
- array
$optionsнеобязательно array() - Массив опций.
Возвращаемое значение
mixedЛибо последнее результат, либо все результаты, если collectReturn включён.
Исключения
CakeExceptionпри использовании modParams с индексом, который не существует.
unloadsource public
unload( string $name )
Имя объекта, который нужно удалить из коллекции
Параметры
- string
$name - Имя объекта для удаления.
Резюме свойств
© 2005–2016 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.
http://api.cakephp.org/2.7/class-ObjectCollection.html