PhpStorm 2018.3 Help

Working with Events

A good practice in applications design is making use of componentization and loose coupling. Ideally, components should have no knowledge of other components except for their interface or events. This allows reusing components over different applications or swapping out components with other implementations.

Symfony provides the EventDispatcher component that lets your application components communicate with each other by dispatching events and listening to them.

Code completion for events

In the editor, press Ctrl+Space to invoke code completion and do any of the following:

  • Provide events' names to the relevant functions when dispatching or subscribing to events.

    ps symfony event name completion
  • Provide events' names within an array of all events you're subscribing to, which is required for implementing EventSubscriberInterface.

    ps symfony array event name completion

Code navigation for events

To navigate to the declaration of an event, position the caret at its usage and press Ctrl+B. Alternatively, Ctrl+Click (for Windows and Linux) or ⌘+Click (for macOS) the usage.

If several declarations are located, choose a specific one to navigate to from the pop-up menu.

ps symfony event navigate declaration
Last modified: 15 February 2019