Класс BehaviorCollection
Модель класса коллекции поведения.
Определяет интерфейс поведения и содержит общую функциональность взаимодействия с моделью.
- ObjectCollection
-
BehaviorCollection реализует CakeEventListener
Авторские права: Авторские права (с) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT Лицензия
Расположение: Cake/Model/BehaviorCollection.php
Краткое описание свойств
-
$_mappedMethodsprotectedХранит список всех методов, которые были сопоставлены с регулярными выражениямиarray -
$_methodsprotectedХранит список всех методов прикреплённых поведенийarray -
$modelNamepublicХранит ссылку на прикреплённое имяstring
Унаследованные свойства
Краткое описание методов
- attach() publicОбратная совместимость с алиасом load()
- detach() publicОбратная совместимость с алиасом unload()
- dispatchMethod() publicОтправляет метод поведения. Вызовет либо обычные методы, либо сопоставленные методы.
- hasMethod() public
Проверка, реализует ли поведение в этой коллекции предоставленный метод. Также будет проверяться mappedMethods.
- implementedEvents() public
Возвращает реализованные события, которые будут направлены в функцию trigger, чтобы отправить их отдельно для каждого поведения.
- init() publicПрисоединяет объект модели и загружает список поведений
- load() public
Загружает поведение в коллекцию. Вы можете использовать
$config['enabled'] = falseдля загрузки поведения с отключёнными обратными вызовами. По умолчанию обратные вызовы включены. Отключенные поведения всё ещё могут быть использованы как обычно. - methods() public
Получает список методов для присоединённых поведений, т. е. все публичные методы, не являющиеся обратными вызовами. Это не включает mappedMethods.
- unload() publicОтсоединяет поведение от модели
Подробное описание методов
attach()source public
attach( string $behavior , array $config array() )
Обратная совместимость с алиасом load()
Устаревшее
3.0.0 Будет удалено в версии 3.0. Заменено на load().Параметры
- строка
$behavior - Имя поведения.
- массив
$configнеобязательно array() - Параметры конфигурации.
detach()source public
detach( string $name )
Обратная совместимость с алиасом unload()
Устаревшее
3.0.0 Будет удалено в версии 3.0. Используйте unload вместо этого.Параметры
- строка
$name - Имя поведения
dispatchMethod()source public
dispatchMethod( Model $model , string $method , array $params array() , boolean $strict false )
Отправляет метод поведения. Вызовет либо обычные методы, либо сопоставленные методы.
Если метод не обрабатывается BehaviorCollection, и $strict равен false, будет возвращено специальное значение array('unhandled'), чтобы указать, что метод не найден.
Параметры
-
Model$model - Модель, на которой изначально был вызван метод.
- строка
$method - Вызванный метод.
- массив
$paramsнеобязательно array() - Параметры для вызванного метода.
- логическое значение
$strictнеобязательно false - Если методы не найдены, сгенерировать ошибку.
Возвращает
массивВсе методы всех присоединённых к этому объекту поведений
hasMethod()source public
hasMethod( string $method , boolean $callback false )
Проверка, реализует ли поведение в этой коллекции предоставленный метод. Также будет проверяться mappedMethods.
Параметры
- строка
$method - Метод для поиска.
- логическое значение
$callbackнеобязательно false - Возвратить обратный вызов для метода.
Возвращает
смешанныйЕсли $callback равен false, будет возвращено логическое значение, если true, будет возвращён массив, содержащий информацию об обратном вызове. Для сопоставленных методов массив будет содержать 3 элемента.
implementedEvents()source public
implementedEvents( )
Возвращает реализованные события, которые будут направлены в функцию trigger, чтобы отправить их отдельно для каждого поведения.
Возвращает
массивРеализация
CakeEventListener::implementedEvents() init()source public
init( string $modelName , array $behaviors array() )
Присоединяет объект модели и загружает список поведений
Параметры
- строка
$modelName - Имя модели.
- массив
$behaviorsнеобязательно array() - Список поведений.
load()source public
load( string $behavior , array $config array() )
Загружает поведение в коллекцию. Вы можете использовать $config['enabled'] = false для загрузки поведения с отключёнными обратными вызовами. По умолчанию обратные вызовы включены. Отключенные поведения всё ещё могут быть использованы как обычно.
Вы можете использовать алиас вашего поведения как существующего поведения, установив ключ 'className', например:
public $actsAs = array(
'Tree' => array(
'className' => 'AliasedTree'
);
); Все вызовы поведения Tree будут использовать AliasedTree вместо.
Параметры
- строка
$behavior - Имя поведения в формате CamelCase для загрузки
- массив
$configнеобязательно array() - Параметры конфигурации поведения
Возвращает
логическое значениеTrue при успехе, false при ошибке
Выбрасывает
MissingBehaviorExceptionкогда поведение не найдено.
methods()source public
methods( )
Получает список методов для присоединённых поведений, т. е. все публичные методы, не являющиеся обратными вызовами. Это не включает mappedMethods.
Возвращает
массивВсе публичные методы для всех присоединённых к этой коллекции поведений
unload()source public
unload( string $name )
Отсоединяет поведение от модели
Параметры
- строка
$name - Имя поведения в формате CamelCase для разгрузки
Переопределяет
ObjectCollection::unload() Наследованные методы из ObjectCollection
__get()source public
__get( string $name )
Обеспечивает публичный доступ для чтения к загруженным объектам
Параметры
- строка
$name - Имя свойства для чтения
Возвращает
смешанный__isset()source public
__isset( string $name )
Предоставляет доступ isset к _loaded
Параметры
- строка
$name - Имя проверяемого объекта.
Возвращает
логическое значениеattached()source public
attached( string $name null )
Получает список присоединённых объектов или статус прикрепления указанного объекта.
Устаревшее
3.0.0 Будет удалено в 3.0. Используйте вместо этого loaded().Параметры
- string
$nameнеобязательно null Необязательно. Название объекта, для которого необходимо проверить статус прикрепления. Если опущено, возвращает массив текущих прикреплённых объектов.
Возвращает
mixedЕсли $name указан, возвращает булево значение статуса соответсвующего объекта. В противном случае возвращает массив всех присоединённых объектов.
disable()source public
disable( string|array $name )
Отключает обратные вызовы для объекта или массива объектов. Публичные методы объектов по-прежнему доступны для вызова в обычном режиме.
Параметры
- string|array
$name - Имя объектов в CamelCase (строка или массив) для отключения.
enable()source public
enable( string|array $name , boolean $prioritize true )
Включает обратные вызовы для объекта или массива объектов.
Параметры
- string|array
$name - Имя объекта(ов) в CamelCase (строка или массив) для включения.
- boolean
$prioritizeнеобязательно true - Установить приоритет списка включенных объектов после включения объекта(ов).
enabled()source public
enabled( string $name null )
Получает список текущих активных объектов или текущий статус одного объекта.
Параметры
- string
$nameнеобязательно null Необязательно. Название объекта, для которого необходимо проверить статус. Если опущено, возвращает массив текущих активных объектов.
Возвращает
mixedЕсли $name указан, возвращает булево значение статуса соответсвующего объекта. В противном случае возвращает массив всех активных объектов.
loaded()source public
loaded( string $name null )
Получает список загруженных объектов или статус загрузки указанного объекта.
Параметры
- string
$nameнеобязательно null Необязательно. Название объекта, для которого необходимо проверить статус. Если опущено, возвращает массив текущих загруженных объектов.
Возвращает
mixedЕсли $name указан, возвращает булево значение статуса соответсвующего объекта. В противном случае возвращает массив всех загруженных объектов.
normalizeObjectArray()source public static
normalizeObjectArray( array $objects )
Нормализует массив объектов, создавая массив, который упрощает ленивую загрузку.
Параметры
- array
$objects - Массив дочерних объектов для нормализации.
Возвращает
arrayМассив нормализованных объектов.
prioritize()source public
prioritize( )
Устанавливает приоритет списка активных объектов.
Возвращает
arrayСписок объектов с приоритетами.
set()source public
set( string $name null , CakeObject $object null )
Добавляет или перезаписывает экземпляр объекта в коллекцию.
Параметры
- string
$nameнеобязательно null - Имя объекта.
-
CakeObject$objectнеобязательно null - Объект для использования.
Возвращает
arrayЗагруженные объекты.
setPriority()source public
setPriority( string|array $name , integer|null $priority null )
Устанавливает приоритет для объекта или массива объектов.
Параметры
- string|array
$name Имя объекта(ов) в CamelCase (строка или массив) для включения. Если строка, используется второй параметр $priority. В противном случае это ассоциативный массив с именами объектов в качестве ключей и приоритетами в качестве значений.
- integer|null
$priorityнеобязательно null - Целочисленный приоритет для установки или null для значения по умолчанию.
trigger()source 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 с индексом, который не существует.
Подробное описание свойств
$_mappedMethodssource
protected array
Содержит список всех методов, которые были сопоставлены с регулярными выражениями.
array()
© 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.
https://api.cakephp.org/2.9/class-BehaviorCollection.html