Spec-Zone.ru › Symfony 3.1

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

класс Router реализует RouterInterface, RequestMatcherInterface

Класс Router — это пример интеграции всех частей системы маршрутизации для более удобного использования.

Методы

__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 = ABSOLUTEPATH, но маршрут требует схемы https, а текущая схема - http, он вместо этого вернёт ABSOLUTEURL со схемой https и текущим хостом. Это гарантирует, что сгенерированный URL соответствует маршруту в любом случае.

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

Параметры

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

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

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

Исключения

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

array match(string $pathinfo)

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

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

Параметры

string $pathinfo Путь, подлежащий разбору (в сыром формате, т.е. не декодированный с помощью urldecode)

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

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

Исключения

ResourceNotFoundException Если ресурс не был найден
MethodNotAllowedException Если ресурс был найден, но метод запроса запрещён

array matchRequest(Request $request)

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

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

Параметры

Request $request Запрос для сопоставления

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

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

Исключения

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.1/Symfony/Component/Routing/Router.html

Spec-Zone.ru

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