Маршрутизатор
класс Маршрутизатор расширяет Маршрутизатор и реализует WarmableInterface
Этот Маршрутизатор создаёт Загрузчик только тогда, когда кэш пуст.
Методы
| __construct(ContainerInterface $container, mixed $resource, array $options = array(), RequestContext $context = 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) | из Маршрутизатор | |
| warmUp(string $cacheDir) Прогревает кэш. |
Подробности
__construct(ContainerInterface $container, mixed $resource, array $options = array(), RequestContext $context = null)
Конструктор.
Параметры
| ContainerInterface | $container | Экземпляр ContainerInterface |
| mixed | $resource | Основной ресурс для загрузки |
| array | $options | Массив опций |
| RequestContext | $context | Контекст |
setOptions(array $options)
Устанавливает опции.
Доступные опции:
- cache_dir: Директория кеша (или null для отключения кеширования)
- debug: Включить отладку или нет (по умолчанию false)
- resource_type: Тип подсказки для основного ресурса (необязательно)
Параметры
| 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.
Параметры
| string | $name | Имя маршрута |
| mixed | $parameters | Массив параметров |
| int | $referenceType | Тип ссылки, которая должна быть сгенерирована (одна из констант) |
Возвращаемое значение
| string | Сгенерированный URL |
Исключения
| RouteNotFoundException | Если указанный маршрут не существует |
| MissingMandatoryParametersException | Когда отсутствуют некоторые обязательные параметры для маршрута |
| InvalidParameterException | Когда значение параметра для плейсхолдера неверно, так как оно не соответствует требованиям |
array match(string $pathinfo)
Пытается сопоставить URL-путь с набором маршрутов.
Если сопоставитель не может найти информацию, он должен выбросить одно из исключений, описанных ниже.
Параметры
| string | $pathinfo | Путь для обработки (сырой формат, т.е. не декодированный из URL) |
Возвращаемое значение
| 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 |
warmUp(string $cacheDir)
Прогревает кеш.
Параметры
| string | $cacheDir | Директория кеша |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.0/Symfony/Bundle/FrameworkBundle/Routing/Router.html