Интерфейс маршрутизатора
интерфейс RouterInterface реализует UrlMatcherInterface, UrlGeneratorInterface
Интерфейс RouterInterface — это интерфейс, который должны реализовывать все классы маршрутизатора.
Этот интерфейс представляет собой объединение интерфейсов UrlMatcherInterface и UrlGeneratorInterface.
Методы
| setContext(RequestContext $context) Устанавливает контекст запроса. | из RequestContextAwareInterface | |
| RequestContext | getContext() Получает контекст запроса. | из RequestContextAwareInterface |
| массив | match(string $pathinfo) Пытается сопоставить путь URL с набором маршрутов. | из UrlMatcherInterface |
| строка | generate(string $name, mixed $parameters = array(), Boolean|string $referenceType = self::ABSOLUTE_PATH) Генерирует URL или путь для конкретного маршрута на основе заданных параметров. | из UrlGeneratorInterface |
| RouteCollection | getRouteCollection() Получает экземпляр RouteCollection, связанный с этим маршрутизатором. |
Подробности
setContext(RequestContext $context)
Устанавливает контекст запроса.
Параметры
| RequestContext | $context | Контекст |
RequestContext getContext()
Получает контекст запроса.
Возвращаемое значение
| RequestContext | Контекст |
массив match(string $pathinfo)
Пытается сопоставить путь URL с набором маршрутов.
Если сопоставление не удается, необходимо бросить одно из исключений, описанных ниже.
Параметры
| строка | $pathinfo | Путь URL для обработки (в сыром формате, т.е. не декодированный по URL) |
Возвращаемое значение
| массив | Массив параметров |
Исключения
| ResourceNotFoundException | Если ресурс не найден |
| MethodNotAllowedException | Если ресурс найден, но метод запроса не разрешен |
строка generate(string $name, mixed $parameters = array(), Boolean|string $referenceType = self::ABSOLUTE_PATH)
Генерирует URL или путь для конкретного маршрута на основе заданных параметров.
Параметры, ссылающиеся на заполнитель в шаблоне маршрута, подставят их в путь или хост. Дополнительные параметры добавляются в строку запроса URL.
Когда переданный тип ссылки не может быть сгенерирован для маршрута, потому что он требует другого хоста или схемы, чем текущий, метод вернет более полную ссылку, которая включает необходимые параметры. Например, при вызове этого метода с $referenceType = ABSOLUTEPATH, но маршрут требует схемы https, а текущая схема — http, он вместо этого вернет ABSOLUTEURL со схемой https и текущим хостом. Это гарантирует, что сгенерированный URL соответствует маршруту в любом случае.
Если маршрут с данным именем отсутствует, генератор должен бросить исключение RouteNotFoundException.
Параметры
| строка | $name | Имя маршрута |
| смешанный тип | $parameters | Массив параметров |
| булево значение/строка | $referenceType | Тип ссылки для генерации (одно из констант) |
Возвращаемое значение
| строка | Сгенерированный URL |
Исключения
| RouteNotFoundException | Если указанный маршрут не существует |
| MissingMandatoryParametersException | Когда отсутствуют обязательные параметры для маршрута |
| InvalidParameterException | Когда значение параметра для заполнителя некорректно, так как не соответствует требованиям |
RouteCollection getRouteCollection()
Получает экземпляр RouteCollection, связанный с этим маршрутизатором.
Возвращаемое значение
| RouteCollection | Экземпляр RouteCollection |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.3/Symfony/Component/Routing/RouterInterface.html