РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
170 of 1361 menu

Метод generateUrl

Метод generateUrl класса AbstractController генерирует URL по имени маршрута. Первым параметром передаётся имя маршрута, вторым - массив параметров для подстановки в путь. Третьим параметром можно передать флаг абсолютного URL. Метод возвращает строку с готовым адресом.

Синтаксис

<?php generateUrl(string $route, array $parameters = [], int $referenceType = UrlGeneratorInterface::ABSOLUTE_PATH) ?>

Пример

Давайте сгенерируем URL по имени маршрута:

<?php namespace AppController; use SymfonyBundleFrameworkBundleControllerAbstractController; use SymfonyComponentHttpFoundationResponse; use SymfonyComponentRoutingAttributeRoute; class ArticleController extends AbstractController { #[Route('/article', name: 'article_index')] public function index(): Response { $url = $this->generateUrl('article_index'); return new Response($url); } } ?>

Результат выполнения кода:

"/article"

Пример

Давайте передадим параметр id в маршрут:

<?php namespace AppController; use SymfonyBundleFrameworkBundleControllerAbstractController; use SymfonyComponentHttpFoundationResponse; use SymfonyComponentRoutingAttributeRoute; class ArticleController extends AbstractController { #[Route('/article/{id}', name: 'article_show')] public function show(int $id): Response { $url = $this->generateUrl('article_show', ['id' => 5]); return new Response($url); } } ?>

Результат выполнения кода:

"/article/5"

Пример

Давайте сгенерируем абсолютный URL с доменом:

<?php namespace AppController; use SymfonyBundleFrameworkBundleControllerAbstractController; use SymfonyComponentHttpFoundationResponse; use SymfonyComponentRoutingAttributeRoute; use SymfonyComponentRoutingGeneratorUrlGeneratorInterface; class ArticleController extends AbstractController { #[Route('/article/{id}', name: 'article_show')] public function show(int $id): Response { $url = $this->generateUrl( 'article_show', ['id' => 5], UrlGeneratorInterface::ABSOLUTE_URL ); return new Response($url); } } ?>

Результат выполнения кода:

"http://localhost/article/5"

Смотрите также

  • класс AbstractController,
    который предоставляет метод generateUrl
  • метод redirectToRoute,
    который делает редирект на маршрут
  • метод redirect,
    который делает редирект по URL
  • метод render,
    который рендерит Twig-шаблон
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить