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

Метод duplicate

Метод duplicate класса Request создаёт новый объект запроса, копируя данные из текущего. Первым параметром передаётся массив параметров запроса (query), вторым - массив данных тела запроса (request), третьим - массив атрибутов, четвёртым - массив cookies, пятым - массив файлов, шестым - массив серверных переменных. Если параметр равен null, соответствующая часть запроса копируется без изменений.

Синтаксис

public function duplicate( array $query = null, array $request = null, array $attributes = null, array $cookies = null, array $files = null, array $server = null ): static

Пример

Давайте создадим копию запроса и изменим в ней параметр page:

<?php namespace AppController; use SymfonyBundleFrameworkBundleControllerAbstractController; use SymfonyComponentHttpFoundationRequest; use SymfonyComponentHttpFoundationResponse; class ArticleController extends AbstractController { public function index(Request $request): Response { $request->query->set('page', 1); $newRequest = $request->duplicate(['page' => 5]); return new Response($newRequest->query->get('page')); } } ?>

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

5

Пример

Давайте скопируем запрос и добавим новый атрибут user_id:

<?php namespace AppController; use SymfonyBundleFrameworkBundleControllerAbstractController; use SymfonyComponentHttpFoundationRequest; use SymfonyComponentHttpFoundationResponse; class ArticleController extends AbstractController { public function index(Request $request): Response { $newRequest = $request->duplicate(null, null, ['user_id' => 42]); return new Response($newRequest->attributes->get('user_id')); } } ?>

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

42

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

  • класс Request,
    который представляет HTTP-запрос
  • метод get,
    который возвращает параметр из query-строки
  • метод getPayload,
    который возвращает тело запроса
  • метод getMethod,
    который возвращает HTTP-метод запроса
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить