Spec-Zone.ru › CakePHP 4.3

Класс HelperRegistry

HelperRegistry используется в качестве реестра загруженных хелперов и обрабатывает загрузку и создание объектов класса хелпера.

Пространство имён: Cake\View

Краткое описание свойств

  • $_View protected
    Cake\View\View

    Объект View, используемый при создании хелперов.

  • $_eventClass protected
    string

    Имя по умолчанию класса для новых событий.

  • $_eventManager protected
    Cake\Event\EventManagerInterface|null

    Экземпляр Cake\Event\EventManager, используемый этим объектом для отправки внутренних событий.

  • $_loaded protected
    array<object>

    Карта загруженных объектов.

Краткое описание методов

  • __construct() public

    Конструктор

  • __debugInfo() public

    Свойства объекта для удобства отладки.

  • __get() public

    Предоставление публичного чтения загруженных объектов.

  • __isset() public

    Попытка ленивой загрузки хелпера по его имени. Если его нет в папке приложения, ищется в текущем плагине.

  • __set() public

    Устанавливает объект.

  • __unset() public

    Удаляет объект.

  • _checkDuplicate() protected

    Проверка на дублирование объектов.

  • _create() protected

    Создание экземпляра хелпера.

  • _resolveClassName() protected

    Разрешение имени класса хелпера.

  • _throwMissingClassError() protected

    Выбрасывает исключение, если хелпер отсутствует.

  • count() public

    Возвращает количество загруженных объектов.

  • dispatchEvent() public

    Обёртка для создания и отправки событий.

  • get() public

    Получение экземпляра загруженного объекта.

  • getEventManager() public

    Возвращает экземпляр менеджера Cake\Event\EventManager для этого объекта.

  • getIterator() public

    Возвращает итератор массива.

  • has() public

    Проверка, загружен ли данный объект.

  • load() public

    Загрузка/создание экземпляра объекта.

  • loaded() public

    Получение списка загруженных объектов.

  • normalizeArray() public

    Нормализует массив объектов, создаёт массив, который упрощает ленивую загрузку.

  • reset() public

    Очистка загруженных экземпляров в реестре.

  • set() public

    Непосредственно устанавливает объект в реестр по имени.

  • setEventManager() public

    Возвращает экземпляр Cake\Event\EventManagerInterface для этого объекта.

  • unload() public

    Удаление объекта из реестра.

END_OF_DOCUMENT_MARKER

Подробное описание методов

__construct() public

__construct(Cake\View\View $view)

Конструктор

Параметры

Cake\View\View $view

Объект представления.

__debugInfo() public

__debugInfo(): array<string, mixed>

Свойства объекта для отладки.

Возвращает

array<string, mixed>

__get() public

__get(string $name): Cake\View\Helper|null

Обеспечивает доступ для чтения к загруженным объектам

Параметры

string $name

Имя свойства для чтения

Возвращает

Cake\View\Helper|null

__isset() public

__isset(string $helper): bool

Попытка ленивой загрузки помощника по его имени. Если помощник не найден в папке приложения, то поиск производится в текущем плагине, если таковой имеется.

Параметры

string $helper

Имя помощника для загрузки

Возвращает

bool

Исключения

Cake\View\Exception\MissingHelperException
При отсутствии помощника. Помощники приложения ищутся, затем помощники плагина.

__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

Проверка на дублирование загрузки объекта.

Если загружается дубликат с разной конфигурацией, это плохо, и будет возбуждено исключение.

Исключение возбуждается, так как замена объекта не обновит ссылки, которые могут быть у других объектов. Кроме того, простое обновление конфигурации во время выполнения не является хорошим вариантом, так как мы можем пропустить важную логику конструктора, зависящую от конфигурации.

Параметры

string $name

Имя псевдонима в реестре.

array<string, mixed> $config

Данные конфигурации для нового экземпляра.

Возвращает

void

Исключения

RuntimeException
При обнаружении дубликата.

_create() protected

_create(object|string $class, string $alias, array<string, mixed> $config): Cake\View\Helper

Создание экземпляра помощника.

Часть шаблонного метода для Cake\Core\ObjectRegistry::load() Включенные помощники будут зарегистрированы в менеджере событий.

Параметры

object|string $class

Класс для создания.

string $alias

Псевдоним загруженного помощника.

array<string, mixed> $config

Массив настроек для помощника.

Возвращает

Cake\View\Helper

_resolveClassName() protected

_resolveClassName(string $class): string|null

Разрешение имени класса помощника.

Часть шаблонного метода для 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\View\Exception\MissingHelperException

count() public

count(): int

Возвращает количество загруженных объектов.

Возвращает

int

dispatchEvent() public

dispatchEvent(string $name, array|null $data = null, object|null $subject = null): Cake\Event\EventInterface

Обертка для создания и отправки событий.

Возвращает отправленное событие.

Параметры

string $name

Имя события.

array|null $data optional

Любое значение, которое вы хотите передать с этим событием, его могут прочитать слушатели.

object|null $subject optional

Объект, к которому относится это событие ($this по умолчанию).

Возвращает

Cake\Event\EventInterface

get() public

get(string $name): object

Получение экземпляра загруженного объекта.

Параметры

string $name

Имя объекта.

Возвращает

object

Исключения

RuntimeException
Если не загружен или не найден.

getEventManager() public

getEventManager(): Cake\Event\EventManagerInterface

Возвращает экземпляр менеджера событий Cake\Event\EventManager для этого объекта.

Вы можете использовать этот экземпляр для регистрации новых слушателей или обратных вызовов для событий объекта, или создавать свои собственные события и вызывать их по своему усмотрению.

Возвращает

Cake\Event\EventManagerInterface

getIterator() public

getIterator(): Traversable

Возвращает итератор массива.

Возвращает

Traversable

has() public

has(string $name): bool

Проверка наличия загруженного объекта.

Параметры

string $name

Имя проверяемого объекта.

Возвращает

bool

load() 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

Очистка загруженных экземпляров в реестре.

Если в подклассе реестра есть менеджер событий, объекты также будут откреплены от событий.

Возвращает

$this

set() public

set(string $name, object $object): $this

Установить объект напрямую в реестр по имени.

Если этот набор реализует события, переданный объект будет присоединён к диспетчеру событий

Параметры

string $name

Имя объекта для установки в реестр.

object $object

экземпляр для хранения в реестре

Возвращаемое значение

$this

setEventManager() public

setEventManager(Cake\Event\EventManagerInterface $eventManager): $this

Возвращает экземпляр Cake\Event\EventManagerInterface для этого объекта.

Вы можете использовать этот экземпляр для регистрации новых слушателей или обратных вызовов событий объекта, или создавать свои собственные события и запускать их по своему усмотрению.

Параметры

Cake\Event\EventManagerInterface $eventManager

диспетчер событий для установки

Возвращаемое значение

$this

unload() public

unload(string $name): $this

Удалить объект из реестра.

Если в этом реестре есть диспетчер событий, объект также будет отсоединён от любых событий.

Параметры

string $name

Имя объекта для удаления из реестра.

Возвращаемое значение

$this

Подробности свойств

$_View protected

Объект представления, используемый при создании помощников.

Тип

Cake\View\View

$_eventClass protected

Имя класса по умолчанию для новых объектов событий.

Тип

string

$_eventManager protected

Экземпляр Cake\Event\EventManager, используемый этим объектом для отправки внутренних событий.

Тип

Cake\Event\EventManagerInterface|null

$_loaded protected

Карта загруженных объектов.

Тип

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.View.HelperRegistry.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API