Класс HelperRegistry
HelperRegistry используется в качестве реестра загруженных помощников и отвечает за загрузку и создание объектов класса помощника.
- Cake\Core\ObjectRegistry реализует Countable, IteratorAggregate
-
Cake\View\HelperRegistry реализует Cake\Event\EventDispatcherInterface использует Cake\Event\EventDispatcherTrait
Краткое описание свойств
- Объект представления, используемый при создании помощников.
$_Viewprotected
Унаследованные свойства
Краткое описание методов
- __construct() publicКонструктор
- __get() publicПредоставляет общедоступный доступ для чтения к загруженным объектам
- __isset() public
Попытка ленивой загрузки помощника по его имени. Если помощник не найден в папке приложения, поиск производится в текущем плагине, если таковой есть.
- _create() protectedСоздание экземпляра помощника.
- _resolveClassName() protectedРазрешение имени класса помощника.
- _throwMissingClassError() protectedВыбрасывает исключение, если помощник отсутствует.
Подробное описание методов
__construct()source public
__construct( Cake\View\View $view )
Конструктор
Параметры
-
Cake\View\View$view - Объект представления.
__get()source public
__get( string $name )
Предоставляет общедоступный доступ для чтения к загруженным объектам
Параметры
- string
$name - Имя свойства для чтения
Возвращает
mixedПереопределяет
Cake\Core\ObjectRegistry::__get() __isset()source public
__isset( string $helper )
Попытка ленивой загрузки помощника по его имени. Если помощник не найден в папке приложения, поиск производится в текущем плагине, если таковой есть
Параметры
- string
$helper - Имя помощника для загрузки
Возвращает
booleanбыл ли помощник загружен или нет
Выбрасывает
Cake\View\Exception\MissingHelperExceptionКогда помощник не был найден. Сначала ищутся помощники приложения, затем плагина.
Переопределяет
Cake\Core\ObjectRegistry::__isset() _create()source protected
_create( string $class , string $alias , array $settings )
Создание экземпляра помощника.
Часть шаблонового метода для Cake\Core\ObjectRegistry::load() Загруженные помощники будут зарегистрированы в диспетчере событий.
Параметры
- string
$class - Класс для создания.
- string
$alias - Псевдоним загруженного помощника.
- array
$settings - Массив настроек для помощника.
Возвращает
Cake\Controller\ComponentСозданный класс помощника.
_resolveClassName()source protected
_resolveClassName( string $class )
Разрешение имени класса помощника.
Часть шаблонового метода для Cake\Core\ObjectRegistry::load()
Параметры
- string
$class - Частичное имя класса для разрешения.
Возвращает
string|falseПравильное имя класса или false.
_throwMissingClassError()source protected
_throwMissingClassError( string $class , string $plugin )
Выбрасывает исключение, если помощник отсутствует.
Часть шаблонового метода для Cake\Core\ObjectRegistry::load() и Cake\Core\ObjectRegistry::unload()
Параметры
- string
$class - Отсутствующий класс.
- string
$plugin - Плагин, в котором помощник отсутствует.
Выбрасывает
Cake\View\Exception\MissingHelperExceptionМетоды, унаследованные от Cake\Core\ObjectRegistry
__set()source public
__set( string $name , mixed $object )
Устанавливает объект.
Параметры
- string
$name - Имя свойства для установки.
- mixed
$object - Объект для установки.
__unset()source public
__unset( string $name )
Удаляет объект.
Параметры
- string
$name - Имя свойства для удаления.
_checkDuplicate()source protected
_checkDuplicate( string $name , array $config )
Проверка на дублирование загрузки объектов.
Если загружается дубликат с разными настройками, это ошибка, и будет выброшено исключение.
Исключение выбрасывается, так как замена объекта не обновит ссылки, которые другие объекты могут иметь. Кроме того, простое обновление конфигурации во время выполнения не является хорошим вариантом, так как мы можем пропустить важные логические блоки конструктора, зависящие от конфигурации.
Параметры
- string
$name - Имя псевдонима в реестре.
- array
$config - Данные конфигурации для нового экземпляра.
Выбрасывает
RuntimeExceptionПри обнаружении дубликата.
count()source public
count( )
Возвращает количество загруженных объектов.
Возвращает
integerРеализация
Countable::count() get()source public
get( string $name )
Получение экземпляра загруженного объекта.
Параметры
- string
$name - Имя объекта.
Возвращает
object|nullЭкземпляр объекта, если загружен, иначе null.
getIterator()source public
getIterator( )
Возвращает итератор массива.
Возвращает
ArrayIteratorРеализация
IteratorAggregate::getIterator() has()source public
has( string $name )
Проверка загрузки объекта.
Параметры
- string
$name - Имя объекта для проверки.
Возвращает
booleanTrue, если объект загружен, иначе false.
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 вместо этого.
Параметры
- string
$objectName - Имя/класс объекта для загрузки.
- array
$configнеобязательно [] - Дополнительные настройки для использования при загрузке объекта.
Возвращаемое значение
mixedloaded()source public
loaded( )
Получить список загруженных объектов.
Возвращаемое значение
arrayСписок имён объектов.
normalizeArray()source public
normalizeArray( array $objects )
Нормализует массив объектов, создаёт массив, который упрощает ленивую загрузку
Параметры
- array
$objects - Массив дочерних объектов для нормализации.
Возвращаемое значение
arrayМассив нормализованных объектов.
reset()source public
reset( )
Очистить загруженные экземпляры в реестре.
Если подкласс реестра имеет менеджер событий, объекты также будут отвязаны от событий.
Возвращаемое значение
$this
set()source public
set( string $objectName , object $object )
Установить объект напрямую в реестре по имени.
Если эта коллекция реализует события, переданный объект будет добавлен в менеджер событий.
Параметры
- string
$objectName - Имя объекта для установки в реестре.
- object
$object - экземпляр для хранения в реестре
Возвращаемое значение
$this
unload()source public
unload( string $objectName )
Удалить объект из реестра.
Если этот реестр имеет менеджер событий, объект также будет отвязан от любых событий.
Параметры
- string
$objectName - Имя объекта для удаления из реестра.
Возвращаемое значение
$this
Методы, используемые из Cake\Event\EventDispatcherTrait
dispatchEvent()source public
dispatchEvent( string $name , array|null $data null , object|null $subject null )
Обёртка для создания и отправки событий.
Возвращает обработанное событие.
Параметры
- string
$name - Имя события.
- array|null
$dataнеобязательно null Любое значение, которое вы хотите передать с этим событием, чтобы его могли прочитать слушатели.
- object|null
$subjectнеобязательно null Объект, к которому относится это событие ($this по умолчанию).
Возвращаемое значение
Cake\Event\EventeventManager()source public
eventManager( Cake\Event\EventManager $eventManager null )
Возвращает экземпляр менеджера Cake\Event\EventManager для этого объекта.
Вы можете использовать этот экземпляр для регистрации новых слушателей или обратных вызовов на события объекта, или для создания собственных событий и их запуска.
Устарело
3.5.0 Используйте getEventManager()/setEventManager() вместо этого.Параметры
-
Cake\Event\EventManager$eventManagerнеобязательно null - менеджер событий для установки
Возвращаемое значение
Cake\Event\EventManagergetEventManager()source public
getEventManager( )
Возвращает экземпляр менеджера Cake\Event\EventManager для этого объекта.
Вы можете использовать этот экземпляр для регистрации новых слушателей или обратных вызовов на события объекта, или для создания собственных событий и их запуска.
Возвращаемое значение
Cake\Event\EventManagersetEventManager()source public
setEventManager( Cake\Event\EventManager $eventManager )
Возвращает экземпляр менеджера Cake\Event\EventManager для этого объекта.
Вы можете использовать этот экземпляр для регистрации новых слушателей или обратных вызовов на события объекта, или для создания собственных событий и их запуска.
Параметры
-
Cake\Event\EventManager$eventManager - менеджер событий для установки
Возвращаемое значение
$this
Магические методы, унаследованные от Cake\Event\EventDispatcherInterface
getEventManager() |
Подробное описание свойств
© 2005–2018 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.5/class-Cake.View.HelperRegistry.html