RouterListener
class RouterListener implements EventSubscriberInterface
Инициализирует контекст из запроса и устанавливает атрибуты запроса на основе соответствующего маршрута.
Этот слушатель работает в 2 режимах:
- Совместимость с версией 2.3, где необходимо вызывать setRequest всякий раз, когда запрос изменяется.
- Режим 2.4+ и выше, где необходимо передать экземпляр RequestStack в конструктор.
Методы
| __construct(UrlMatcherInterface|RequestMatcherInterface $matcher, RequestStack $requestStack = null, RequestContext|null $context = null, LoggerInterface|null $logger = null) RequestStack станет обязательным в версии 3.0. | ||
| setRequest(Request $request = null) устаревшее Устанавливает текущий запрос. | ||
| onKernelFinishRequest(FinishRequestEvent $event) | ||
| onKernelRequest(GetResponseEvent $event) | ||
| статический массив | getSubscribedEvents() Возвращает массив имен событий, на которые этот подписчик хочет подписаться. |
Детали
__construct(UrlMatcherInterface|RequestMatcherInterface $matcher, RequestStack $requestStack = null, RequestContext|null $context = null, LoggerInterface|null $logger = null)
RequestStack станет обязательным в версии 3.0.
Параметры
| UrlMatcherInterface|RequestMatcherInterface | $matcher | Матчер Url или запроса |
| RequestStack | $requestStack | Экземпляр RequestStack |
| RequestContext|null | $context | RequestContext (может быть null, если $matcher реализует RequestContextAwareInterface) |
| LoggerInterface|null | $logger | Логгер |
Исключения
| InvalidArgumentException |
setRequest(Request $request = null) устаревшее
устаревшее
Устанавливает текущий запрос.
Этот метод использовался для синхронизации запроса, но так как HttpKernel теперь делает это автоматически, его не следует вызывать напрямую. Он остается публичным для обратной совместимости с версией 2.3.
Параметры
| Request | $request | Экземпляр Request |
onKernelFinishRequest(FinishRequestEvent $event)
Параметры
| 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')))
Возвращаемое значение
| array | Имена событий, на которые нужно подписаться |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/2.8/Symfony/Component/HttpKernel/EventListener/RouterListener.html