Spec-Zone.ru › CakePHP 3.3

Класс HelperRegistry

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

Cake\Core\ObjectRegistry
Расширенный Cake\View\HelperRegistry реализует Cake\Event\EventDispatcherInterface использует 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
Имя свойства для чтения

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

смешанный

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

Cake\Core\ObjectRegistry::__get()

__isset()source public

__isset( string $helper )

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

Параметры

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

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

логическое значение
можно ли загрузить хелпер или нет

Исключения

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\Controller\Component
Созданный класс хелпера.

_resolveClassName()source protected

_resolveClassName( string $class )

Разрешить имя класса хелпера.

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

Параметры

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

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

строка|ложь
Либо правильное имя класса, либо ложь.

_throwMissingClassError()source protected

_throwMissingClassError( string $class , string $plugin )

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

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

Параметры

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

Исключения

Cake\View\Exception\MissingHelperException

Методы, унаследованные от Cake\Core\ObjectRegistry

__debugInfo()source public

__debugInfo( )

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

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

массив

_checkDuplicate()source protected

_checkDuplicate( string $name , array $config )

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

Если загружается дубликат с другими настройками, это ошибка, и будет выброшено исключение.

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

Параметры

строка $name
Имя псевдонима в реестре.
массив $config
Данные конфигурации для нового экземпляра.

Исключения

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

get()source public

get( string $name )

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

Параметры

строка $name
Имя объекта.

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

объект|null
Экземпляр объекта, если загружен, иначе null.

has()source public

has( string $name )

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

Параметры

строка $name
Имя объекта для проверки.

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

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

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

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

смешанный

loaded()source public

loaded( )

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

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

массив
Список имён объектов.

normalizeArray()source public

normalizeArray( array $objects )

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

Параметры

массив $objects
Массив дочерних объектов для нормализации.

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

массив
Массив нормализованных объектов.

reset()source public

reset( )

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

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

END_OF_DOCUMENT_MARKER

set()source public

set( string $objectName , object $object )

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

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

Параметры

строка $objectName
Имя объекта для установки в реестр.
объект $object
экземпляр для хранения в реестре

unload()source public

unload( string $objectName )

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

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

Параметры

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

Методы, используемые из 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

eventManager( Cake\Event\EventManager $eventManager null )

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

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

Параметры

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

Возвращает

Cake\Event\EventManager

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

$_Viewsource

protected Cake\View\View

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

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

Spec-Zone.ru

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