Слушатель маршрутизатора
класс RouterListener реализует EventSubscriberInterface
Инициализирует контекст из запроса и устанавливает атрибуты запроса на основе сопоставленного маршрута.
Методы
| __construct(UrlMatcherInterface|RequestMatcherInterface $matcher, RequestStack $requestStack, RequestContext $context = null, LoggerInterface $logger = null) Конструктор. | ||
| onKernelFinishRequest(FinishRequestEvent $event) После завершения подзапроса необходимо сбросить контекст маршрутизации на родительский запрос, чтобы генератор URL работал в правильном контексте. | ||
| onKernelRequest(GetResponseEvent $event) | ||
| статический массив | getSubscribedEvents() Возвращает массив имён событий, на которые этот подписчик хочет подписаться. |
Детали
__construct(UrlMatcherInterface|RequestMatcherInterface $matcher, RequestStack $requestStack, RequestContext $context = null, LoggerInterface $logger = null)
Конструктор.
Параметры
| UrlMatcherInterface|RequestMatcherInterface | $matcher | Url или Request matcher |
| RequestStack | $requestStack | Экземпляр RequestStack |
| RequestContext | $context | RequestContext (может быть null, если $matcher реализует RequestContextAwareInterface) |
| LoggerInterface | $logger | Логгер |
Исключения
| InvalidArgumentException |
onKernelFinishRequest(FinishRequestEvent $event)
После завершения подзапроса необходимо сбросить контекст маршрутизации на родительский запрос, чтобы генератор URL работал в правильном контексте.
Параметры
| FinishRequestEvent | $event |
onKernelRequest(GetResponseEvent $event)
Параметры
| GetResponseEvent | $event |
static array getSubscribedEvents()
Возвращает массив имён событий, на которые этот подписчик хочет подписаться.
Ключи массива — имена событий, а значение может быть:
- Имя метода для вызова (приоритет по умолчанию 0)
- Массив, состоящий из имени метода для вызова и приоритета
- Массив массивов, состоящий из имён методов для вызова и соответствующих приоритетов, или 0, если не задано
Например:
- array('eventName' => 'methodName')
- array('eventName' => array('methodName', $priority))
- array('eventName' => array(array('methodName1', $priority), array('methodName2'))
Значение возврата
| массив | Имена событий для подписки |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.0/Symfony/Component/HttpKernel/EventListener/RouterListener.html