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

Атрибут MapQueryParameter

Атрибут MapQueryParameter вешается на аргумент метода контроллера и позволяет автоматически извлекать значения из query-строки запроса. Первым параметром передаётся имя query-параметра, который нужно получить. Если имя не указано, используется имя аргумента метода.

Синтаксис

#[MapQueryParameter(name: 'param_name')]

Пример

Давайте получим параметр page из query-строки:

<?php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\HttpKernel\Attribute\MapQueryParameter; use Symfony\Component\Routing\Attribute\Route; class ArticleController extends AbstractController { #[Route('/article', name: 'article_index')] public function index( #[MapQueryParameter] int $page = 1 ): Response { return new Response('Page: ' . $page); } } ?>

Результат выполнения кода для адреса /article?page=5:

Page: 5

Пример

Давайте явно укажем имя query-параметра sort для аргумента order:

<?php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\HttpKernel\Attribute\MapQueryParameter; use Symfony\Component\Routing\Attribute\Route; class ArticleController extends AbstractController { #[Route('/article/list', name: 'article_list')] public function list( #[MapQueryParameter(name: 'sort')] string $order = 'asc' ): Response { return new Response('Order: ' . $order); } } ?>

Результат выполнения кода для адреса /article/list?sort=desc:

Order: desc

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

  • атрибут MapQueryString,
    который связывает query-строку с DTO-объектом
  • атрибут MapRequestPayload,
    который связывает тело запроса с DTO-объектом
  • атрибут MapEntity,
    который автоматически загружает сущность из базы данных
  • атрибут MapUploadedFile,
    который связывает загруженный файл с аргументом
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить