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