Spec-Zone.ru › Symfony 3.4

Маршрутизатор

класс Маршрутизатор реализует RouterInterface, RequestMatcherInterface

Класс Маршрутизатор является примером интеграции всех компонентов системы маршрутизации для удобного использования.

Методы

__construct(LoaderInterface $loader, mixed $resource, array $options = array(), RequestContext $context = null, LoggerInterface $logger = null)
setOptions(array $options)

Устанавливает параметры.

setOption(string $key, mixed $value)

Устанавливает параметр.

mixed getOption(string $key)

Получает значение параметра.

RouteCollection getRouteCollection()

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

setContext(RequestContext $context)

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

RequestContext getContext()

Возвращает контекст запроса.

setConfigCacheFactory(ConfigCacheFactoryInterface $configCacheFactory)

Устанавливает фабрику ConfigCache для использования.

string generate(string $name, mixed $parameters = array(), int $referenceType = self::ABSOLUTE_PATH)

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

array match(string $pathinfo)

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

array matchRequest(Request $request)

Пытается сопоставить запрос с набором маршрутов.

UrlMatcherInterface getMatcher()

Возвращает экземпляр UrlMatcher, связанный с этим маршрутизатором.

UrlGeneratorInterface getGenerator()

Возвращает экземпляр UrlGenerator, связанный с этим маршрутизатором.

addExpressionLanguageProvider(ExpressionFunctionProviderInterface $provider)

Подробности

__construct(LoaderInterface $loader, mixed $resource, array $options = array(), RequestContext $context = null, LoggerInterface $logger = null)

Параметры

LoaderInterface $loader Экземпляр LoaderInterface
mixed $resource Основной ресурс для загрузки
array $options Массив параметров
RequestContext $context Контекст
LoggerInterface $logger Экземпляр логгера

setOptions(array $options)

Устанавливает параметры.

Доступные параметры:

  • cache_dir: Каталог кеша (или null для отключения кеширования)
  • debug: Включить отладку (по умолчанию false)
  • generator_class: Имя реализации UrlGeneratorInterface
  • generatorbaseclass: Базовый класс для сгенерированного класса генератора
  • generatorcacheclass: Имя класса для сгенерированного класса генератора
  • generatordumperclass: Имя реализации GeneratorDumperInterface
  • matcher_class: Имя реализации UrlMatcherInterface
  • matcherbaseclass: Базовый класс для сгенерированного класса матчера
  • matcherdumperclass: Имя реализации MatcherDumperInterface
  • resource_type: Тип подсказки для основного ресурса (необязательно)
  • strict_requirements: Настроить строгую проверку требований для генераторов, реализующих ConfigurableRequirementsInterface (по умолчанию true)

Параметры

array $options Массив параметров

Исключения

InvalidArgumentException При указании недопустимого параметра

setOption(string $key, mixed $value)

Устанавливает параметр.

Параметры

string $key Ключ
mixed $value Значение

Исключения

InvalidArgumentException

mixed getOption(string $key)

Получает значение параметра.

Параметры

string $key Ключ

Возвращаемое значение

mixed Значение

Исключения

InvalidArgumentException

RouteCollection getRouteCollection()

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

Возвращаемое значение

RouteCollection Экземпляр RouteCollection

setContext(RequestContext $context)

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

Параметры

RequestContext $context

RequestContext getContext()

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

Возвращаемое значение

RequestContext Контекст

setConfigCacheFactory(ConfigCacheFactoryInterface $configCacheFactory)

Устанавливает фабрику ConfigCache для использования.

Параметры

ConfigCacheFactoryInterface $configCacheFactory

string 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.

Параметры

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

Возвращаемое значение

string Сгенерированный URL

Исключения

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

array match(string $pathinfo)

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

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

Параметры

string $pathinfo Путь для разбора (сырой формат, т.е. не urldecoded)

Возвращаемое значение

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

Исключения

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

array matchRequest(Request $request)

Пытается сопоставить запрос с набором маршрутов.

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

Параметры

Request $request

Возвращаемое значение

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

Исключения

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

UrlMatcherInterface getMatcher()

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

Возвращаемое значение

UrlMatcherInterface Экземпляр UrlMatcherInterface

UrlGeneratorInterface getGenerator()

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

Возвращаемое значение

UrlGeneratorInterface Экземпляр UrlGeneratorInterface

addExpressionLanguageProvider(ExpressionFunctionProviderInterface $provider)

Параметры

ExpressionFunctionProviderInterface $provider

© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.4/Symfony/Component/Routing/Router.html

Spec-Zone.ru

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