Spec-Zone.ru › CakePHP 4.3

Класс EventManager

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

Пространство имён: Cake\Event

Краткое описание свойств

  • $_eventList protected
    Cake\Event\EventList|null

    Объект списка событий.

  • $_generalManager protected static
    Cake\Event\EventManager|null

    Глобально доступный экземпляр, используемый для отправки событий, присоединенных из любого контекста

  • $_isGlobal protected
    bool

    Внутренний флаг для различения общего менеджера и синглтона

  • $_listeners protected
    array

    Список обработчиков обратных вызовов, связанных с

  • $_trackEvents protected
    bool

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

  • $defaultPriority public static
    int

    Значение очереди по умолчанию для новых присоединенных слушателей

Краткое описание методов

  • __debugInfo() public

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

  • _attachSubscriber() protected

    Вспомогательная функция для подключения всех реализованных обратных вызовов экземпляра класса Cake\Event\EventListenerInterface в качестве отдельных методов к этому менеджеру

  • _callListener() protected

    Вызывает слушателя.

  • _detachSubscriber() protected

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

  • _extractCallable() protected

    Вспомогательная функция для извлечения и возврата типа обратного вызова PHP из определения обратного вызова из возвращаемого значения метода implementedEvents() в {@link \Cake\Event\EventListenerInterface}

  • addEventToList() public

    Добавляет событие в список, если объект списка событий присутствует.

  • dispatch() public

    Отправляет новое событие всем настроенным слушателям

  • getEventList() public

    Возвращает список событий.

  • instance() public static

    Возвращает глобально доступный экземпляр Cake\Event\EventManager, используемый для отправки событий, присоединённых вне области видимости других созданных менеджеров. Обычно для создания систем хуков или межклассовой связи

  • isTrackingEvents() public

    Возвращает, настроен ли этот менеджер для отслеживания событий

  • listeners() public

    Возвращает список всех слушателей для eventKey в порядке их вызова

  • matchingListeners() public

    Возвращает слушателей, соответствующих заданному шаблону

  • off() public

    Удаляет слушателя из активных слушателей.

  • on() public

    Добавляет нового слушателя к событию.

  • prioritisedListeners() public

    Возвращает слушателей для указанного ключа события, индексированных по приоритету

  • setEventList() public

    Включает возможность перечисления отправленных событий.

  • trackEvents() public

    Включает/отключает отслеживание событий во время выполнения.

  • unsetEventList() public

    Отключает перечисление отправленных событий.

END_OF_DOCUMENT_MARKER

Подробное описание методов

__debugInfo() public

__debugInfo(): array<string, mixed>

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

Возвращает

array<string, mixed>

_attachSubscriber() protected

_attachSubscriber(Cake\Event\EventListenerInterface $subscriber): void

Вспомогательная функция для прикрепления всех реализованных обратных вызовов класса Cake\Event\EventListenerInterface к этому менеджеру как отдельных методов.

Параметры

Cake\Event\EventListenerInterface $subscriber

Обработчик событий.

Возвращает

void

_callListener() protected

_callListener(callable $listener, Cake\Event\EventInterface $event): mixed

Вызывает обработчик событий.

Параметры

callable $listener

Обработчик событий для запуска.

Cake\Event\EventInterface $event

Экземпляр события.

Возвращает

mixed

_detachSubscriber() protected

_detachSubscriber(Cake\Event\EventListenerInterface $subscriber, string|null $eventKey = null): void

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

Параметры

Cake\Event\EventListenerInterface $subscriber

обработчик для открепления

string|null $eventKey optional

необязательное имя ключа события для открепления обработчика

Возвращает

void

_extractCallable() protected

_extractCallable(array $function, Cake\Event\EventListenerInterface $object): array

Вспомогательная функция для извлечения и возвращения типа PHP обратного вызова из определения обратного вызова, полученного из метода implementedEvents() объекта {@link \Cake\Event\EventListenerInterface}.

Параметры

array $function

массив, взятый из определения обработчика для события

Cake\Event\EventListenerInterface $object

Объект обработчика

Возвращает

array

addEventToList() public

addEventToList(Cake\Event\EventInterface $event): $this

Добавляет событие в список, если объект списка событий присутствует.

Параметры

Cake\Event\EventInterface $event

Событие для добавления в список.

Возвращает

$this

dispatch() public

dispatch(Cake\Event\EventInterface|string $event): Cake\Event\EventInterface

Отправляет новое событие всем настроенным обработчикам.

Параметры

Cake\Event\EventInterface|string $event

Возвращает

Cake\Event\EventInterface

getEventList() public

getEventList(): Cake\Event\EventList|null

Возвращает список событий.

Возвращает

Cake\Event\EventList|null

instance() public static

instance(Cake\Event\EventManager|null $manager = null): Cake\Event\EventManager

Возвращает глобально доступный экземпляр Cake\Event\EventManager, используемый для отправки событий, присоединённых вне области видимости других менеджеров. Обычно используется для создания систем хуков или межклассовой коммуникации.

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

Параметры

Cake\Event\EventManager|null $manager optional

Экземпляр менеджера событий.

Возвращает

Cake\Event\EventManager

isTrackingEvents() public

isTrackingEvents(): bool

Возвращает, настроен ли данный менеджер на отслеживание событий.

Возвращает

bool

listeners() public

listeners(string $eventKey): array

Возвращает список всех обработчиков событий для eventKey в порядке их вызова.

Параметры

string $eventKey

Возвращает

array

matchingListeners() public

matchingListeners(string $eventKeyPattern): array

Возвращает обработчики, соответствующие заданному шаблону.

Параметры

string $eventKeyPattern

Шаблон для соответствия.

Возвращает

array

off() public

off(Cake\Event\EventListenerInterface|callable|string $eventKey, Cake\Event\EventListenerInterface|callable|null $callable = null): $this

Удаляет обработчик из активных обработчиков.

Полное удаление EventListenerInterface:

$manager->off($listener);

Удаление всех обработчиков для данного события:

$manager->off('My.event');

Удаление конкретного обработчика:

$manager->off('My.event', $callback);

Удаление обратного вызова из всех событий:

$manager->off($callback);

Параметры

Cake\Event\EventListenerInterface|callable|string $eventKey
Cake\Event\EventListenerInterface|callable|null $callable optional

Возвращает

$this

on() public

on(Cake\Event\EventListenerInterface|string $eventKey, callable|array $options = [], callable|null $callable = null): $this

Добавляет нового обработчика события.

Многопараметрический интерфейс для добавления обработчиков, эмулирующий jQuery.on().

Связывание EventListenerInterface:

$eventManager->on($listener);

Связывание без опций:

$eventManager->on('Model.beforeSave', $callable);

Связывание с опциями:

$eventManager->on('Model.beforeSave', ['priority' => 90], $callable);

Параметры

Cake\Event\EventListenerInterface|string $eventKey
callable|array $options optional
callable|null $callable optional

Возвращает

$this

prioritisedListeners() public

prioritisedListeners(string $eventKey): array

Возвращает обработчики для указанного ключа события, индексированные по приоритету.

Параметры

string $eventKey

Ключ события.

Возвращает

array

setEventList() public

setEventList(Cake\Event\EventList $eventList): $this

Включает возможность отображения событий.

Параметры

Cake\Event\EventList $eventList

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

Возвращает

$this

trackEvents() public

trackEvents(bool $enabled): $this

Включает/выключает отслеживание событий во время выполнения.

Параметры

bool $enabled

Истина или ложь для включения/выключения.

Возвращает

$this

unsetEventList() public

unsetEventList(): $this

Отключает отображение событий.

Возвращает

$this

Подробное описание свойств

$_eventList защищенное

Объект списка событий.

Тип

Cake\Event\EventList|null

$_generalManager защищенное статическое

Глобально доступная инстанция, используемая для диспетчеризации событий, прикрепленных из любого контекста

Тип

Cake\Event\EventManager|null

$_isGlobal защищенное

Внутренний флаг для различения общего менеджера от синглтона

Тип

bool

$_listeners защищенное

Список колбэков обработчиков, связанных с

Тип

array

$_trackEvents защищенное

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

Тип

bool

$defaultPriority публичное статическое

Значение очереди по умолчанию для приоритета новых прикрепленных обработчиков

Тип

int

© 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/4.3/class-Cake.Event.EventManager.html

Spec-Zone.ru

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