Класс PluginCollection
Коллекция плагинов
Хранит объекты плагинов, загруженные в приложение, и предоставляет методы для итерации и поиска плагинов по критериям.
Этот класс реализует интерфейс Iterator, чтобы позволить итерировать плагины, обрабатывая ситуацию, когда метод хука плагина (обычно bootstrap) загружает другой плагин во время итерации.
- Cake\Core\PluginCollection реализует Iterator, Countable
Краткое описание свойств
-
$namesprotectedИмена плагиновarray -
$pluginsprotectedСписок плагиновarray -
$positionprotectedПозиция итератора.integer
Краткое описание методов
- __construct() publicКонструктор
- add() publicДобавить плагин в коллекцию
- count() publicРеализация Countable.
- current() publicЧасть интерфейса Iterator
- get() publicПолучить плагин по имени
- has() publicПроверить, существует ли плагин с заданным именем в коллекции.
- key() publicЧасть интерфейса Iterator
- next() publicЧасть интерфейса Iterator
- remove() publicУдалить плагин из коллекции, если он существует.
- rewind() publicЧасть интерфейса Iterator
- valid() publicЧасть интерфейса Iterator
- with() publicОтфильтровать плагины до тех, у которых включён хук с заданным именем.
Подробное описание методов
__construct()source public
__construct( array $plugins = [] )
Конструктор
Параметры
- массив
$pluginsнеобязательно [] - Карта плагинов для добавления в коллекцию.
add()source public
add( Cake\Core\PluginInterface $plugin )
Добавить плагин в коллекцию
Плагины будут индексироваться по их именам.
Параметры
-
Cake\Core\PluginInterface$plugin - Плагин для загрузки.
Возвращает
$this
count()source public
count( )
Реализация Countable.
Получить количество плагинов в коллекции.
Возвращает
целое числоРеализация
Countable::count() current()source public
current( )
Часть интерфейса Iterator
Возвращает
Cake\Core\PluginInterfaceРеализация
Iterator::current() get()source public
get( string $name )
Получить плагин по имени
Параметры
- строка
$name - Плагин для получения.
Возвращает
Cake\Core\PluginInterfaceПлагин.
Исключения
Cake\Core\Exception\MissingPluginExceptionпри получении неизвестных плагинов.
has()source public
has( string $name )
Проверить, существует ли плагин с заданным именем в коллекции.
Параметры
- строка
$name - Имя плагина.
Возвращает
логическое значениеremove()source public
remove( string $name )
Удалить плагин из коллекции, если он существует.
Параметры
- строка
$name - Имя плагина.
Возвращает
$this
valid()source public
valid( )
Часть интерфейса Iterator
Возвращает
логическое значениеРеализация
Iterator::valid() with()source public
with( string $hook )
Отфильтровать плагины до тех, у которых включён хук с заданным именем.
Параметры
- строка
$hook - Хук для фильтрации плагинов
Возвращает
ГенераторГенератор, содержащий соответствующие плагины.
Исключения
InvalidArgumentExceptionпри неверных хуках
Подробное описание свойств
© 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/3.6/class-Cake.Core.PluginCollection.html