Spec-Zone.ru › CakePHP 3.7

Класс HelperRegistry

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

Cake\Core\ObjectRegistry implements Countable, IteratorAggregate
Extended by Cake\View\HelperRegistry implements Cake\Event\EventDispatcherInterface uses Cake\Event\EventDispatcherTrait
Пространство имён: Cake\View
Расположение: View/HelperRegistry.php

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

  • $_View protected
    Cake\View\View
    Объект View для использования при создании помощников.

Унаследованные свойства

  • _loaded _eventClass, _eventManager

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

  • __construct() public
    Конструктор
  • __get() public
    Обеспечивает публичный доступ для чтения к загруженным объектам
  • __isset() public

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

  • _create() protected
    Создание экземпляра помощника.
  • _resolveClassName() protected
    Разрешение имени класса помощника.
  • _throwMissingClassError() protected
    Выбрасывает исключение, если помощник отсутствует.

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

__construct()source public

__construct( Cake\View\View $view )

Конструктор

Параметры

Cake\View\View $view
Объект View.

__get()source public

__get( string $name )

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

Параметры

строка $name
Имя свойства для чтения

Возвращает

mixed

Переопределяет

Cake\Core\ObjectRegistry::__get()

__isset()source public

__isset( string $helper )

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

Параметры

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

Возвращает

boolean
Загружен ли помощник или нет

Исключения

Cake\View\Exception\MissingHelperException

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


Переопределяет

Cake\Core\ObjectRegistry::__isset()

_create()source protected

_create( string $class , string $alias , array $settings )

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

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

Параметры

строка $class
Класс для создания.
строка $alias
Псевдоним загруженного помощника.
массив $settings
Массив настроек для помощника.

Возвращает

Cake\View\Helper
Созданный класс помощника.

_resolveClassName()source protected

_resolveClassName( string $class )

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

Часть шаблонного метода для Cake\Core\ObjectRegistry::load()

Параметры

строка $class
Частичное имя класса для разрешения.

Возвращает

строка|ложь
Правильное имя класса или ложь.

_throwMissingClassError()source protected

_throwMissingClassError( string $class , string $plugin )

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

Часть шаблонного метода для Cake\Core\ObjectRegistry::load() и Cake\Core\ObjectRegistry::unload()

Параметры

строка $class
Отсутствующий класс.
строка $plugin
Плагин, в котором отсутствует помощник.

Исключения

Cake\View\Exception\MissingHelperException

Наследованные методы из Cake\Core\ObjectRegistry

__debugInfo()source public

__debugInfo( )

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

Возвращает

массив

__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
Имя проверяемого объекта.

Возвращает

boolean
Истина, если объект загружен, иначе ложь.
END_OF_DOCUMENT_MARKER

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
Имя/класс объекта для загрузки.
массив $config необязательно []
Дополнительные параметры для использования при загрузке объекта.

Возвращает

mixed

Выбрасывает

Exception
Если класс не найден.

loaded()source public

loaded( )

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

Возвращает

string[]
Список имён объектов.

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

Методы, используемые из Cake\Event\EventDispatcherTrait

dispatchEvent()source public

dispatchEvent( string $name , array|null $data = null , object|null $subject = null )

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

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

Параметры

строка $name
Название события.
массив|null $data необязательно null

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

объект|null $subject необязательно null

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

Возвращает

Cake\Event\Event

eventManager()source public deprecated

eventManager( Cake\Event\EventManager $eventManager = null )

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

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

Устарело

3.5.0 Используйте getEventManager()/setEventManager() вместо этого.

Параметры

Cake\Event\EventManager $eventManager необязательно null
диспетчер событий для установки

Возвращает

Cake\Event\EventManager

getEventManager()source public

getEventManager( )

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

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

Возвращает

Cake\Event\EventManager

setEventManager()source public

setEventManager( Cake\Event\EventManager $eventManager )

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

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

Параметры

Cake\Event\EventManager $eventManager
диспетчер событий для установки

Возвращает


$this

Магические методы, унаследованные от Cake\Event\EventDispatcherInterface

getEventManager()

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

$_Viewsource

protected Cake\View\View

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

© 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.7/class-Cake.View.HelperRegistry.html

Spec-Zone.ru

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