Класс HelperRegistry
HelperRegistry используется в качестве реестра загруженных помощников и отвечает за загрузку и создание объектов помощников.
- Cake\Core\ObjectRegistry
-
Cake\View\HelperRegistry реализует Cake\Event\EventDispatcherInterface использует Cake\Event\EventDispatcherTrait
Краткое описание свойств
- Объект View, который следует использовать при создании помощников.
$_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 - Объект 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()
Параметры
- string
$class - Отсутствующий класс.
- string
$plugin - Плагин, в котором отсутствует помощник.
Исключения
Cake\View\Exception\MissingHelperExceptionНаследованные методы из Cake\Core\ObjectRegistry
_checkDuplicate()source protected
_checkDuplicate( string $name , array $config )
Проверка на дублирование загружаемых объектов.
Если загружается дубликат с разными настройками, это плохо и будет вызвано исключение.
Вызывается исключение, так как замена объекта не обновит ссылки, которые могут иметь другие объекты. Кроме того, простое обновление конфигурации во время выполнения не является хорошим вариантом, так как могут отсутствовать важные логики конструктора, зависящие от конфигурации.
Параметры
- string
$name - Имя псевдонима в реестре.
- array
$config - Данные конфигурации для нового экземпляра.
Исключения
RuntimeExceptionПри обнаружении дубликата.
get()source public
get( string $name )
Получение экземпляра загруженного объекта.
Параметры
- string
$name - Имя объекта.
Возвращает
object|nullЭкземпляр объекта, если загружен, иначе null.
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
$configoptional [] - Дополнительные настройки при загрузке объекта.
Возвращает
mixedloaded()source public
loaded( )
Получение списка загруженных объектов.
Возвращает
arrayСписок имён объектов.
normalizeArray()source public
normalizeArray( array $objects )
Нормализация массива объектов, создание массива, который упрощает ленивую загрузку
Параметры
- array
$objects - Массив дочерних объектов для нормализации.
Возвращает
arrayМассив нормализованных объектов.
reset()source public
reset( )
Очистка загруженных экземпляров в реестре.
Если подкласс реестра имеет диспетчер событий, объекты также будут отсоединены от событий.
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\EventeventManager()source public
eventManager( Cake\Event\EventManager $eventManager null )
Возвращает экземпляр диспетчера событий Cake\Event\EventManager для этого объекта.
Вы можете использовать этот экземпляр для регистрации новых слушателей или обратных вызовов для событий объекта, или создавать собственные события и вызывать их по своему усмотрению.
Параметры
-
Cake\Event\EventManager$eventManagerнеобязательно null - диспетчер событий для установки
Возвращает
Cake\Event\EventManagerПодробное описание свойств
© 2005–2016 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.
http://api.cakephp.org/3.2/class-Cake.View.HelperRegistry.html