Класс HelperRegistry
Регистр для хелперов. Предоставляет возможности для ленивой загрузки хелперов.
- Cake\Core\ObjectRegistry implements Countable, IteratorAggregate
-
Cake\Console\HelperRegistry
Краткое описание свойств
- Консоль для установки параметров задач.
$_ioprotected
Наследованные свойства
Краткое описание методов
- _create() protectedСоздание экземпляра хелпера.
- _resolveClassName() protectedРазрешение имени класса хелпера.
- _throwMissingClassError() protectedВыбрасывает исключение, если хелпер отсутствует.
- setIo() publicУстанавливает экземпляр IO, который должен быть передан хелперам оболочки
Подробное описание методов
_create()source protected
_create( string $class , string $alias , array $settings )
Создание экземпляра хелпера.
Часть шаблонового метода для Cake\Core\ObjectRegistry::load()
Параметры
- строка
$class - Имя класса для создания.
- строка
$alias - Псевдоним хелпера.
- массив
$settings - Массив настроек для хелпера.
Возвращает
Cake\Console\HelperСозданный класс хелпера.
_resolveClassName()source protected
_resolveClassName( string $class )
Разрешение имени класса хелпера.
Часть шаблонового метода для Cake\Core\ObjectRegistry::load()
Параметры
- строка
$class - Частичное имя класса для разрешения.
Возвращает
string|falseПравильное имя класса или false.
_throwMissingClassError()source protected
_throwMissingClassError( string $class , string $plugin )
Выбрасывает исключение, если хелпер отсутствует.
Часть шаблонового метода для Cake\Core\ObjectRegistry::load() и Cake\Core\ObjectRegistry::unload()
Параметры
- строка
$class - Отсутствующий класс.
- строка
$plugin - Плагин, в котором отсутствует хелпер.
Выбрасывает
Cake\Console\Exception\MissingHelperExceptionsetIo()source public
setIo( Cake\Console\ConsoleIo $io )
Устанавливает экземпляр IO, который должен быть передан хелперам оболочки
Параметры
-
Cake\Console\ConsoleIo$io - Экземпляр io.
Методы, унаследованные от Cake\Core\ObjectRegistry
__get()source public
__get( string $name )
Обеспечивает публичный доступ для чтения к загруженным объектам
Параметры
- строка
$name - Имя свойства для чтения
Возвращает
смешанный тип__isset()source public
__isset( string $name )
Предоставляет доступ isset к _loaded
Параметры
- строка
$name - Имя проверяемого объекта.
Возвращает
булево__set()source public
__set( string $name , mixed $object )
Устанавливает объект.
Параметры
- строка
$name - Имя свойства для установки.
- смешанный тип
$object - Объект для установки.
__unset()source public
__unset( string $name )
Удаляет объект.
Параметры
- строка
$name - Имя свойства для удаления.
_checkDuplicate()source protected
_checkDuplicate( string $name , array $config )
Проверка на дублирование загрузки объекта.
Если загружается дубликат с другими настройками, это плохо, и будет выброшено исключение.
Исключение выбрасывается, так как замена объекта не обновит никакие ссылки, которые могут иметь другие объекты. Кроме того, простое обновление конфигурации во время выполнения не является хорошим вариантом, поскольку мы можем пропустить важную логику конструктора, зависящую от конфигурации.
Параметры
- строка
$name - Имя псевдонима в реестре.
- массив
$config - Данные конфигурации для нового экземпляра.
Выбрасывает
RuntimeExceptionПри обнаружении дубликата.
count()source public
count( )
Возвращает количество загруженных объектов.
Возвращает
целое числоРеализация
Countable::count() get()source public
get( string $name )
Получение экземпляра загруженного объекта.
Параметры
- строка
$name - Имя объекта.
Возвращает
объект|nullЭкземпляр объекта, если загружен, иначе null.
getIterator()source public
getIterator( )
Возвращает итератор массива.
Возвращает
ArrayIteratorРеализация
IteratorAggregate::getIterator() has()source public
has( string $name )
Проверка наличия загруженного объекта.
Параметры
- строка
$name - Имя объекта для проверки.
Возвращает
булевоTrue, если объект загружен, иначе false.
load()source public
load( string $objectName , array $config [] )
Загрузка/создание экземпляра объекта.
Вернёт экземпляр из реестра, если он уже существует. Если подкласс поддерживает события, можно использовать $config['enabled'] = false для исключения созданных объектов из регистрации событий.
Пример использования Cake\Controller\Controller::$components. Можно задать псевдоним объекта, установив ключ 'className', например:
public $components = [
'Email' => [
'className' => '\App\Controller\Component\AliasedEmailComponent'
];
]; Все вызовы к компоненту Email будут использовать AliasedEmail вместо.
Параметры
- строка
$objectName - Имя/класс объекта для загрузки.
- массив
$configoptional [] - Дополнительные настройки для загрузки объекта.
Возвращает
смешанный типloaded()source public
loaded( )
Получить список загруженных объектов.
Возвращает
массивСписок имён объектов.
normalizeArray()source public
normalizeArray( array $objects )
Нормализует массив объектов, создаёт массив, упрощающий ленивую загрузку
Параметры
- массив
$objects - Массив дочерних объектов для нормализации.
Возвращаемое значение
массивМассив нормализованных объектов.
reset()source public
reset( )
Очистить загруженные экземпляры в реестре.
Если подкласс реестра имеет менеджер событий, объекты также будут отделены от событий.
Возвращаемое значение
$this
set()source public
set( string $objectName , object $object )
Непосредственно установить объект в реестре по имени.
Если эта коллекция реализует события, переданный объект будет подключен к менеджеру событий
Параметры
- строка
$objectName - Имя объекта для установки в реестр.
- объект
$object - Экземпляр для хранения в реестре
Возвращаемое значение
$this
unload()source public
unload( string $objectName )
Удалить объект из реестра.
Если у этого реестра есть менеджер событий, объект также будет отделен от любых событий.
Параметры
- строка
$objectName - Имя объекта для удаления из реестра.
Возвращаемое значение
$this
Подробное описание свойств
© 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.4/class-Cake.Console.HelperRegistry.html