Spec-Zone.ru › Symfony 3.3

UrlGeneratorInterface

интерфейс UrlGeneratorInterface реализует RequestContextAwareInterface

UrlGeneratorInterface — это интерфейс, который должны реализовывать все классы генераторов URL.

Константы в этом интерфейсе определяют различные типы ссылок на ресурсы, которые объявлены в RFC 3986: http://tools.ietf.org/html/rfc3986 Мы используем термин «URL» вместо «URI», так как он более распространён в веб-приложениях, и нам не нужно различать их, так как разница в основном семантическая, а не техническая. Генерация URI, т. е. независимых от представления идентификаторов ресурсов, также возможна.

Константы

ABSOLUTE_URL

Генерирует абсолютный URL, например, «http://example.com/dir/file».

ABSOLUTE_PATH

Генерирует абсолютный путь, например, «/dir/file».

RELATIVE_PATH

Генерирует относительный путь на основе текущего пути запроса, например, «./».

./parent-file».

NETWORK_PATH

Генерирует сетевой путь, например, «//example.com/dir/file».

Такая ссылка использует текущий схему, но указывает хост.

Методы

setContext(RequestContext $context)

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

из RequestContextAwareInterface
RequestContext getContext()

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

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

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

Подробности

setContext(RequestContext $context)

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

Параметры

RequestContext $context Контекст

RequestContext getContext()

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

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

RequestContext Контекст

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 Если значение параметра для плейсхолдера некорректно, так как оно не соответствует требованиям

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

Spec-Zone.ru

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