Класс HelperRegistry
Регистр для помощников. Предоставляет возможности для ленивой загрузки помощников.
Краткое описание свойств
Краткое описание методов
-
__debugInfo() public
Свойства объекта в удобном для отладки формате.
-
__get() public
Предоставляет публичный доступ для чтения к загруженным объектам
-
__isset() public
Предоставляет доступ isset к _loaded
-
__set() public
Устанавливает объект.
-
__unset() public
Удаляет объект.
-
_checkDuplicate() protected
Проверка на дублирование загрузки объекта.
-
_create() protected
Создать экземпляр помощника.
-
_resolveClassName() protected
Разрешить имя класса помощника.
-
_throwMissingClassError() protected
Выбрасывает исключение, если помощник отсутствует.
-
count() public
Возвращает количество загруженных объектов.
-
get() public
Получить экземпляр загруженного объекта.
-
getIterator() public
Возвращает итератор массива.
-
has() public
Проверить, загружен ли данный объект.
-
load() public
Загрузить/создать экземпляр объекта.
-
loaded() public
Получить список загруженных объектов.
-
normalizeArray() public
Нормализует массив объектов, создаёт массив, который упрощает ленивую загрузку
-
reset() public
Очистить загруженные экземпляры в реестре.
-
set() public
Установить объект непосредственно в реестр по имени.
-
setIo() public
Устанавливает экземпляр IO, который должен быть передан помощникам оболочки.
-
unload() public
Удалить объект из реестра.
Подробное описание методов
__debugInfo() public
__debugInfo(): array<string, mixed>
Свойства объекта, удобные для отладки.
Возвращает
array<string, mixed>__get() public
__get(string $name): object|null
Обеспечивает общедоступный чтение загруженных объектов
Параметры
-
string$name Имя свойства для чтения
Возвращает
object|null__isset() public
__isset(string $name): bool
Обеспечивает доступ isset к _loaded
Параметры
-
string$name Имя проверяемого объекта.
Возвращает
bool__set() public
__set(string $name, object $object): void
Устанавливает объект.
Параметры
-
string$name Имя свойства для установки.
-
object$object Объект для установки.
Возвращает
void__unset() public
__unset(string $name): void
Удаляет объект.
Параметры
-
string$name Имя свойства для удаления.
Возвращает
void_checkDuplicate() protected
_checkDuplicate(string $name, array<string, mixed> $config): void
Проверка на дублирование загрузки объектов.
Если загружается дубликат с другим конфигурацией, это ошибка, и будет возбуждено исключение.
Исключение возбуждается, так как замена объекта не обновит ссылки, которые могут быть у других объектов. Кроме того, простое обновление конфигурации runtime не является хорошим вариантом, так как мы можем пропустить важную логику конструктора, зависящую от конфигурации.
Параметры
-
string$name Имя псевдонима в реестре.
-
array<string, mixed>$config Данные конфигурации для нового экземпляра.
Возвращает
voidВыбрасывает
RuntimeExceptionПри обнаружении дубликата.
_create() protected
_create(object|string $class, string $alias, array<string, mixed> $config): Cake\Console\Helper
Создает экземпляр помощника.
Часть шаблона метода для Cake\Core\ObjectRegistry::load()
Параметры
-
object|string$class Имя класса для создания.
-
string$alias Псевдоним помощника.
-
array<string, mixed>$config Массив настроек для помощника.
Возвращает
Cake\Console\Helper_resolveClassName() protected
_resolveClassName(string $class): string|null
Разрешение имени класса помощника.
Будет отдавать предпочтение помощникам, определённым в Command\Helper, перед теми, которые определены в Shell\Helper.
Часть шаблона метода для {@link \Cake\Core\ObjectRegistry::load()}.
Параметры
-
string$class Частичное имя класса для разрешения.
Возвращает
string|null_throwMissingClassError() protected
_throwMissingClassError(string $class, string|null $plugin): void
Выбрасывает исключение, когда помощник отсутствует.
Часть шаблона метода для Cake\Core\ObjectRegistry::load() и Cake\Core\ObjectRegistry::unload()
Параметры
-
string$class Имя отсутствующего класса.
-
string|null$plugin Плагин, в котором отсутствует помощник.
Возвращает
voidВыбрасывает
Cake\Console\Exception\MissingHelperExceptioncount() public
count(): int
Возвращает количество загруженных объектов.
Возвращает
intget() public
get(string $name): object
Получение экземпляра загруженного объекта.
Параметры
-
string$name Имя объекта.
Возвращает
objectВыбрасывает
RuntimeExceptionЕсли объект не загружен или не найден.
getIterator() public
getIterator(): Traversable
Возвращает итератор массива.
Возвращает
Traversablehas() public
has(string $name): bool
Проверка, загружен ли данный объект.
Параметры
-
string$name Имя объекта для проверки.
Возвращает
boolload() public
load(string $name, array<string, mixed> $config = []): mixed
Загрузка/создание экземпляра объекта.
Возвратит экземпляр из реестра, если он уже существует. Если подкласс поддерживает события, вы можете использовать $config['enabled'] = false для исключения созданных объектов из регистрации для событий.
Пример с {@link \Cake\Controller\Component::$components}. Можно задать псевдоним объекта, установив ключ 'className', например:
protected $components = [
'Email' => [
'className' => 'App\Controller\Component\AliasedEmailComponent'
];
]; Все вызовы к компоненту Email будут использовать AliasedEmail вместо.
Параметры
-
string$name Имя/класс объекта для загрузки.
-
array<string, mixed>$config optional Дополнительные настройки для загрузки объекта.
Возвращает
mixedВыбрасывает
ExceptionЕсли класс не найден.
loaded() public
loaded(): array<string>
Получение списка загруженных объектов.
Возвращает
array<string>normalizeArray() public
normalizeArray(array $objects): array<string, array>
Нормализует массив объектов, создает массив, который упрощает ленивую загрузку
Параметры
-
array$objects Массив дочерних объектов для нормализации.
Возвращает
array<string, array>reset() public
reset(): $this
Очистка загруженных экземпляров в реестре.
Если подкласс реестра имеет менеджер событий, объекты также будут отделены от событий.
Возвращает
$thisset() public
set(string $name, object $object): $this
Установка объекта напрямую в реестр по имени.
Если этот коллекция реализует события, переданный объект будет подключен к менеджеру событий
Параметры
-
string$name Имя объекта для установки в реестре.
-
object$object Экземпляр для хранения в реестре.
Возвращает
$thissetIo() public
setIo(Cake\Console\ConsoleIo $io): void
Устанавливает экземпляр ввода/вывода, который должен быть передан помощникам командной строки.
Параметры
-
Cake\Console\ConsoleIo$io Экземпляр ввода/вывода.
Возвращает
voidunload() public
unload(string $name): $this
Удаление объекта из реестра.
Если этот реестр имеет менеджер событий, объект также будет отключен от любых событий.
Параметры
-
string$name Имя объекта для удаления из реестра.
Возвращает
$thisПодробное описание свойств
$_io защищенное
Оболочка для установки параметров задач.
Тип
Cake\Console\ConsoleIo$_loaded защищенное
Карта загруженных объектов.
Тип
array<object>
© 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.3/class-Cake.Console.HelperRegistry.html