Spec-Zone.ru › Symfony 4.1

Интерфейс маршрутизатора

интерфейс RouterInterface реализует UrlMatcherInterface, UrlGeneratorInterface

Интерфейс RouterInterface — это интерфейс, который должны реализовывать все классы маршрутизатора.

Этот интерфейс представляет собой конкатенацию интерфейсов UrlMatcherInterface и UrlGeneratorInterface.

Методы

setContext(RequestContext $context)

Устанавливает контекст запроса.

из RequestContextAwareInterface
RequestContext getContext()

Получает контекст запроса.

из RequestContextAwareInterface
массив match(string $pathinfo)

Попытка сопоставить URL-путь с набором маршрутов.

из UrlMatcherInterface
строка generate(string $name, mixed $parameters = array(), int $referenceType = self::ABSOLUTE_PATH)

Генерирует URL или путь для определенного маршрута на основе заданных параметров.

из UrlGeneratorInterface
RouteCollection getRouteCollection()

Получает экземпляр RouteCollection, связанный с этим маршрутизатором.

Подробное описание

setContext(RequestContext $context)

Устанавливает контекст запроса.

Параметры

RequestContext $context

RequestContext getContext()

Получает контекст запроса.

Значение возврата

RequestContext Контекст

массив match(string $pathinfo)

Попытка сопоставить URL-путь с набором маршрутов.

Если сопоставитель не может найти информацию, он должен выбросить одно из исключений, описанных ниже.

Параметры

строка $pathinfo Путь для обработки (сырой формат, т. е. не urldecode'd)

Значение возврата

массив Массив параметров

Исключения

NoConfigurationException Если конфигурация маршрутизации не найдена
ResourceNotFoundException Если ресурс не найден
MethodNotAllowedException Если ресурс найден, но метод запроса запрещен

строка generate(string $name, mixed $parameters = array(), int $referenceType = self::ABSOLUTE_PATH)

Генерирует URL или путь для определенного маршрута на основе заданных параметров.

Параметры, которые ссылаются на плейсхолдеры в шаблоне маршрута, заменят их в пути или хосте. Дополнительные параметры добавляются в строку запроса URL.

Когда заданный тип ссылки не может быть сгенерирован для маршрута, поскольку он требует другого хоста или схемы, чем текущий, метод вернет более полную ссылку, которая включает необходимые параметры. Например, при вызове этого метода с $referenceType = ABSOLUTE_PATH, но маршрут требует схемы https, а текущая схема — http, он вместо этого вернет ABSOLUTE_URL со схемой https и текущим хостом. Это гарантирует, что сгенерированный URL соответствует маршруту в любом случае.

Если маршрута с заданным именем нет, генератор должен выбросить RouteNotFoundException.

Специальный параметр _fragment будет использоваться как фрагмент документа, добавленный в конце конечного URL.

Параметры

строка $name Имя маршрута
смешанный тип $parameters Массив параметров
целое $referenceType Тип ссылки, которая должна быть сгенерирована (одно из констант)

Значение возврата

строка Сгенерированный URL

Исключения

RouteNotFoundException Если указанного маршрута не существует
MissingMandatoryParametersException Если некоторые обязательные параметры отсутствуют для маршрута
InvalidParameterException Если значение параметра для плейсхолдера некорректно, так как не соответствует требованиям

RouteCollection getRouteCollection()

Получает экземпляр RouteCollection, связанный с этим маршрутизатором.

Значение возврата

RouteCollection Экземпляр RouteCollection

© 2004–2017 Fabien Potencier
Licensed under the MIT License.
https://api.symfony.com/4.1/Symfony/Component/Routing/RouterInterface.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API