EventDispatcherInterface
интерфейс EventDispatcherInterface
EventDispatcherInterface — центральная точка системы обработчиков событий Symfony.
Обработчики регистрируются в менеджере, а события отправляются через менеджер.
Методы
| Event | dispatch(string $eventName, Event $event = null) Отправляет событие всем зарегистрированным обработчикам. | |
| addListener(string $eventName, callable $listener, int $priority) Добавляет обработчик событий, который следит за указанными событиями. | ||
| addSubscriber(EventSubscriberInterface $subscriber) Добавляет подписчика на события. | ||
| removeListener(string $eventName, callable $listener) Удаляет обработчик событий из указанных событий. | ||
| removeSubscriber(EventSubscriberInterface $subscriber) | ||
| array | getListeners(string $eventName = null) Возвращает обработчики конкретного события или все обработчики, отсортированные по убыванию приоритета. | |
| bool | hasListeners(string $eventName = null) Проверяет, есть ли для события зарегистрированные обработчики. |
Детали
Event dispatch(string $eventName, Event $event = null)
Отправляет событие всем зарегистрированным обработчикам.
Параметры
| string | $eventName | Имя события для отправки. Имя события — это имя метода, вызываемого у обработчиков. |
| Event | $event | событие, передаваемое обработчикам/слушателям. Если не указано, создается пустой экземпляр события |
Возвращаемое значение
| Event |
addListener(string $eventName, callable $listener, int $priority)
Добавляет обработчик событий, который следит за указанными событиями.
Параметры
| string | $eventName | Событие для слежения |
| callable | $listener | Обработчик |
| int | $priority | Чем выше это значение, тем раньше обработчик событий будет срабатывать в цепочке (по умолчанию 0) |
addSubscriber(EventSubscriberInterface $subscriber)
Добавляет подписчика на события.
От подписчика запрашиваются все события, к которым он заинтересован, и добавляется как обработчик для этих событий.
Параметры
| EventSubscriberInterface | $subscriber |
removeListener(string $eventName, callable $listener)
Удаляет обработчик событий из указанных событий.
Параметры
| string | $eventName | Событие, из которого нужно удалить обработчик |
| callable | $listener | Обработчик для удаления |
removeSubscriber(EventSubscriberInterface $subscriber)
Параметры
| EventSubscriberInterface | $subscriber |
array getListeners(string $eventName = null)
Возвращает обработчики конкретного события или все обработчики, отсортированные по убыванию приоритета.
Параметры
| string | $eventName | Имя события |
Возвращаемое значение
| array | Обработчики событий для указанного события или все обработчики событий по имени события |
bool hasListeners(string $eventName = null)
Проверяет, есть ли для события зарегистрированные обработчики.
Параметры
| string | $eventName | Имя события |
Возвращаемое значение
| bool | true, если для указанного события есть обработчики, иначе false |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/2.7/Symfony/Component/EventDispatcher/EventDispatcherInterface.html