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

Метод get класса HeaderBag

Метод get класса HeaderBag возвращает значение HTTP-заголовка по его имени. Первым параметром передаётся имя заголовка (без учёта регистра). Вторым необязательным параметром можно передать значение по умолчанию, которое будет возвращено, если заголовок отсутствует. Метод возвращает строку или значение по умолчанию, если заголовок не найден.

Синтаксис

public function get(string $key, ?string $default = null): ?string

Пример

Давайте создадим объект HeaderBag и получим значение заголовка 'Content-Type':

<?php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\HttpFoundation\HeaderBag; use Symfony\Component\Routing\Attribute\Route; class HeaderController extends AbstractController { #[Route('/header/get', name: 'header_get')] public function index(): Response { $bag = new HeaderBag(['Content-Type' => 'application/json']); return new Response($bag->get('Content-Type')); } } ?>

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

"application/json"

Пример

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

<?php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\HttpFoundation\HeaderBag; use Symfony\Component\Routing\Attribute\Route; class HeaderController extends AbstractController { #[Route('/header/default', name: 'header_default')] public function index(): Response { $bag = new HeaderBag(['Content-Type' => 'text/html']); return new Response($bag->get('X-Custom', 'default-value')); } } ?>

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

"default-value"

Пример

Давайте получим значение заголовка из реального запроса пользователя:

<?php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Routing\Attribute\Route; class HeaderController extends AbstractController { #[Route('/header/request', name: 'header_request')] public function index(Request $request): Response { $userAgent = $request->headers->get('User-Agent', 'unknown'); return new Response($userAgent); } } ?>

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

"Mozilla/5.0 (Windows NT 10.0; Win64; x64)"

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

  • класс HeaderBag,
    который хранит HTTP-заголовки
  • метод all,
    который возвращает все заголовки
  • метод has,
    который проверяет наличие заголовка
  • метод set,
    который устанавливает значение заголовка
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить