Spec-Zone.ru › CakePHP 3.6

Класс 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 )

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

Параметры

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

_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

__debugInfo()source public

__debugInfo( )

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

Возвращает

array

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

Возвращает

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

Возвращает

смешанный тип

Выбрасывает

Исключение
Если класс не найден.

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 deprecated

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

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

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

Устаревшее

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

Параметры

Cake\Event\EventManager $eventManager необязательно null
устанавливаемый eventManager

Возвращает

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
устанавливаемый 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.6/class-Cake.View.HelperRegistry.html

Spec-Zone.ru

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