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

Метод setMaxAge

Метод setMaxAge класса Response задаёт количество секунд, в течение которых ответ считается свежим (кешируемым). Он устанавливает заголовок Cache-Control со значением max-age. Первым параметром передаётся целое число секунд.

Синтаксис

public function setMaxAge(int $value): static

Пример

Давайте установим время кеширования ответа в 3600 секунд:

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

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

article

Заголовок Cache-Control примет значение max-age=3600.

Пример

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

<?php namespace AppController; use SymfonyBundleFrameworkBundleControllerAbstractController; use SymfonyComponentHttpFoundationResponse; use SymfonyComponentRoutingAttributeRoute; class ArticleController extends AbstractController { #[Route('/user', name: 'article_user')] public function user(): Response { $response = new Response('user'); $response->setMaxAge(0); return $response; } } ?>

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

user

Значение 0 указывает браузеру не кешировать ответ.

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

  • класс Response,
    который представляет HTTP-ответ
  • метод setSharedMaxAge,
    который задаёт время кеширования для прокси
  • метод setExpires,
    который устанавливает дату истечения кеша
  • метод setPublic,
    который разрешает публичное кеширование
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить