Маршрутизатор
класс Router расширяет Router и реализует WarmableInterface
Этот Маршрутизатор создает Загрузчик только когда кэш пуст.
Методы
| __construct(ContainerInterface $container, mixed $resource, array $options = array(), RequestContext $context = null) | ||
| setOptions(array $options) Устанавливает параметры. | из Router | |
| setOption(string $key, mixed $value) Устанавливает параметр. | из Router | |
| mixed | getOption(string $key) Получает значение параметра. | из Router |
| RouteCollection | getRouteCollection() Получает экземпляр RouteCollection, связанный с этим Маршрутизатором. | |
| setContext(RequestContext $context) Устанавливает контекст запроса. | из Router | |
| RequestContext | getContext() Получает контекст запроса. | из Router |
| setConfigCacheFactory(ConfigCacheFactoryInterface $configCacheFactory) Устанавливает фабрику ConfigCache для использования. | из Router | |
| string | generate(string $name, mixed $parameters = array(), bool|string $referenceType = self::ABSOLUTE_PATH) Генерирует URL или путь для конкретного маршрута на основе заданных параметров. | из Router |
| array | match(string $pathinfo) Пытается сопоставить URL-путь с набором маршрутов. | из Router |
| array | matchRequest(Request $request) Пытается сопоставить запрос с набором маршрутов. | из Router |
| UrlMatcherInterface | getMatcher() Получает экземпляр UrlMatcher, связанный с этим Маршрутизатором. | из Router |
| UrlGeneratorInterface | getGenerator() Получает экземпляр UrlGenerator, связанный с этим Маршрутизатором. | из Router |
| addExpressionLanguageProvider(ExpressionFunctionProviderInterface $provider) | из Router | |
| GeneratorDumperInterface | getGeneratorDumperInstance() Этот метод является публичным, потому что он должен вызываться из замыкания в PHP 5.3. Он должен быть изменён на защищённый в версии 3.0. | из Router |
| MatcherDumperInterface | getMatcherDumperInstance() Этот метод является публичным, потому что он должен вызываться из замыкания в PHP 5.3. Он должен быть изменён на защищённый в версии 3.0. | из Router |
| 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)
- generator_class: Имя реализации UrlGeneratorInterface
- generatorbaseclass: Базовый класс для сгенерированного класса генератора
- generatorcacheclass: Имя класса для сгенерированного класса генератора
- generatordumperclass: Имя реализации GeneratorDumperInterface
- matcher_class: Имя реализации UrlMatcherInterface
- matcherbaseclass: Базовый класс для сгенерированного класса матчера
- matcherdumperclass: Имя класса для сгенерированного класса матчера
- matchercacheclass: Имя реализации 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, связанный с этим Router.
Возвращаемое значение
| RouteCollection | Экземпляр RouteCollection |
setContext(RequestContext $context)
Устанавливает контекст запроса.
Параметры
| RequestContext | $context |
RequestContext getContext()
Получает контекст запроса.
Возвращаемое значение
| RequestContext | Контекст |
setConfigCacheFactory(ConfigCacheFactoryInterface $configCacheFactory)
Устанавливает фабрику ConfigCache для использования.
Параметры
| ConfigCacheFactoryInterface | $configCacheFactory |
string generate(string $name, mixed $parameters = array(), bool|string $referenceType = self::ABSOLUTE_PATH)
Генерирует URL или путь для определенного маршрута на основе заданных параметров.
Параметры, ссылающиеся на заполнитель в шаблоне маршрута, подставят их в путь или хост. Дополнительные параметры добавляются в строку запроса к URL.
Когда указанный тип ссылки не может быть сгенерирован для маршрута, потому что он требует другого хоста или схемы, чем текущий, метод вернёт более полную ссылку, которая включает необходимые параметры. Например, когда вы вызываете этот метод с $referenceType = ABSOLUTE_PATH, но маршрут требует https-схемы, а текущая схема — http, он вместо этого вернёт ABSOLUTE_URL со схемой https и текущим хостом. Это гарантирует, что сгенерированный URL соответствует маршруту в любом случае.
Если маршрута с заданным именем нет, генератор должен выбросить исключение RouteNotFoundException.
Параметры
| string | $name | Имя маршрута |
| mixed | $parameters | Массив параметров |
| bool|string | $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, связанный с этим Router.
Возвращаемое значение
| UrlMatcherInterface | Экземпляр UrlMatcherInterface |
UrlGeneratorInterface getGenerator()
Получает экземпляр UrlGenerator, связанный с этим Router.
Возвращаемое значение
| UrlGeneratorInterface | Экземпляр UrlGeneratorInterface |
addExpressionLanguageProvider(ExpressionFunctionProviderInterface $provider)
Параметры
| ExpressionFunctionProviderInterface | $provider |
GeneratorDumperInterface getGeneratorDumperInstance()
Этот метод является публичным, потому что он должен вызываться из замыкания в PHP 5.3. Он должен быть изменён на защищённый в версии 3.0.
Возвращаемое значение
| GeneratorDumperInterface |
MatcherDumperInterface getMatcherDumperInstance()
Этот метод является публичным, потому что он должен вызываться из замыкания в PHP 5.3. Он должен быть изменён на защищённый в версии 3.0.
Возвращаемое значение
| MatcherDumperInterface |
warmUp(string $cacheDir)
Прогревает кэш.
Параметры
| string | $cacheDir | Директория кэша |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/2.7/Symfony/Bundle/FrameworkBundle/Routing/Router.html