Spec-Zone.ru › CakePHP 3.4

Класс 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\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() и 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
Имя свойства для установки.
mixed $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

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

Методы, используемые из 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 для этого объекта.

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

Устарело

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

Spec-Zone.ru

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