class EventDispatcher implements EventDispatcherInterface

The EventDispatcherInterface is the central point of Symfony's event listener system.

Listeners are registered on the manager and events are dispatched through the manager.

Methods

__construct()

No description

dispatch(string $eventName, Event $event = null)

Dispatches an event to all registered listeners.

array
getListeners(string|null $eventName = null)

Gets the listeners of a specific event or all listeners sorted by descending priority.

int|null
getListenerPriority(string $eventName, callable $listener)

Gets the listener priority for a specific event.

bool
hasListeners(string|null $eventName = null)

Checks whether an event has any registered listeners.

addListener(string $eventName, callable $listener, int $priority = 0)

Adds an event listener that listens on the specified events.

removeListener(string $eventName, callable $listener)

Removes an event listener from the specified events.

addSubscriber(EventSubscriberInterface $subscriber)

Adds an event subscriber.

removeSubscriber(EventSubscriberInterface $subscriber)

No description

doDispatch(callable[] $listeners, string $eventName, Event $event)

Triggers the listeners of an event.

Details

at line 35
__construct()

at line 45
Event dispatch(string $eventName, Event $event = null)

Dispatches an event to all registered listeners.

Parameters

string $eventName The name of the event to dispatch. The name of the event is the name of the method that is invoked on listeners.
Event $event The event to pass to the event handlers/listeners If not supplied, an empty Event instance is created

Return Value

Event

at line 67
array getListeners(string|null $eventName = null)

Gets the listeners of a specific event or all listeners sorted by descending priority.

Parameters

string|null $eventName The name of the event

Return Value

array The event listeners for the specified event, or all event listeners by event name

at line 93
int|null getListenerPriority(string $eventName, callable $listener)

Gets the listener priority for a specific event.

Returns null if the event or the listener does not exist.

Parameters

string $eventName The name of the event
callable $listener The listener

Return Value

int|null The event listener priority

at line 118
bool hasListeners(string|null $eventName = null)

Checks whether an event has any registered listeners.

Parameters

string|null $eventName The name of the event

Return Value

bool true if the specified event has any listeners, false otherwise

at line 136
addListener(string $eventName, callable $listener, int $priority = 0)

Adds an event listener that listens on the specified events.

Parameters

string $eventName The event to listen on
callable $listener The listener
int $priority The higher this value, the earlier an event listener will be triggered in the chain (defaults to 0)

at line 145
removeListener(string $eventName, callable $listener)

Removes an event listener from the specified events.

Parameters

string $eventName The event to remove a listener from
callable $listener The listener to remove

at line 174
addSubscriber(EventSubscriberInterface $subscriber)

Adds an event subscriber.

The subscriber is asked for all the events it is interested in and added as a listener for these events.

Parameters

EventSubscriberInterface $subscriber

at line 192
removeSubscriber(EventSubscriberInterface $subscriber)

Parameters

EventSubscriberInterface $subscriber

at line 215
protected doDispatch(callable[] $listeners, string $eventName, Event $event)

Triggers the listeners of an event.

This method can be overridden to add functionality that is executed for each listener.

Parameters

callable[] $listeners The event listeners
string $eventName The name of the event to dispatch
Event $event The event object to pass to the event handlers/listeners