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

Метод getParameter

Метод getParameter класса AbstractController возвращает значение параметра из контейнера параметров Symfony. Первым параметром передаётся имя параметра. Вторым необязательным параметром можно передать значение по умолчанию, которое вернётся, если параметр не найден. Метод удобен, когда нужно получить настройку приложения прямо внутри контроллера.

Синтаксис

$this->getParameter(string $name, mixed $default = null): mixed

Пример

Давайте получим параметр app.locale внутри контроллера:

<?php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Routing\Attribute\Route; class ArticleController extends AbstractController { #[Route('/', name: 'article_index')] public function index(): Response { $locale = $this->getParameter('app.locale'); return new Response($locale); } } ?>

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

"en"

Пример

Давайте получим параметр, которого нет в контейнере, и передадим значение по умолчанию:

<?php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Routing\Attribute\Route; class ArticleController extends AbstractController { #[Route('/user', name: 'article_user')] public function user(): Response { $limit = $this->getParameter('app.limit', 10); return new Response((string) $limit); } } ?>

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

"10"

Пример

Давайте передадим полученный параметр в Twig-шаблон:

<?php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Routing\Attribute\Route; class ArticleController extends AbstractController { #[Route('/article', name: 'article_show')] public function show(): Response { $title = $this->getParameter('app.title'); return $this->render('article/show.html.twig', [ 'title' => $title, ]); } } ?>

Содержимое шаблона:

<p>{{ title }}</p>

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

<p>hello</p>

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

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