Spec-Zone.ru › CakePHP 4.2

Класс 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 обратного вызова из определения вызова callable из возвращаемого значения метода implementedEvents класса 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

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

Возвращаемое значение

array

_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 класса 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(stringCake\Event\EventInterface $event): Cake\Event\EventInterface

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

Параметры

stringCake\Event\EventInterface $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(stringCake\Event\EventListenerInterface|callable $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);

Параметры

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

Возвращаемое значение

$this

on() public

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

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

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

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

$eventManager->on($listener);

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

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

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

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

Параметры

stringCake\Event\EventListenerInterface $eventKey
array|callable $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.2/class-Cake.Event.EventManager.html

Spec-Zone.ru

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