Интерфейс маршрутизатора
интерфейс RouterInterface реализует UrlMatcherInterface, UrlGeneratorInterface
Интерфейс RouterInterface — это интерфейс, который должны реализовывать все классы Router.
Этот интерфейс является объединением 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 | Информация о пути (необработанный формат, т.е. не urldecoded) |
Возвращаемое значение
| массив | Массив параметров |
Исключения
| ResourceNotFoundException | Если ресурс не был найден |
| MethodNotAllowedException | Если ресурс был найден, но метод запроса не разрешён |
строка generate(string $name, mixed $parameters = array(), Boolean|string $referenceType = self::ABSOLUTE_PATH)
Генерирует URL или путь для определённого маршрута на основе заданных параметров.
Параметры, которые ссылаются на заполнитель в шаблоне маршрута, подставят их в путь или хост. Дополнительные параметры добавляются как строка запроса к URL.
Если переданный тип ссылки не может быть сгенерирован для маршрута, потому что он требует другого хоста или схемы, чем текущий, метод вернёт более полную ссылку, которая включает необходимые параметры. Например, когда вы вызываете этот метод с $referenceType = ABSOLUTE_PATH, но маршрут требует схемы https, а текущая схема — http, он вместо этого вернёт ABSOLUTE_URL со схемой 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.2/Symfony/Component/Routing/RouterInterface.html