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

Метод delete класса Cache

Метод delete класса Cache удаляет значение из кеша по ключу. Первым параметром передаётся ключ в виде строки. Метод возвращает true, если значение было найдено и успешно удалено, и false, если значение по указанному ключу отсутствовало.

Синтаксис

$cache->delete(string $key): bool

Пример

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

<?php namespace AppController; use SymfonyBundleFrameworkBundleControllerAbstractController; use SymfonyComponentHttpFoundationResponse; use SymfonyContractsCacheCacheInterface; use SymfonyComponentRoutingAttributeRoute; class CacheController extends AbstractController { #[Route('/cache/delete', name: 'cache_delete')] public function delete(CacheInterface $cache): Response { $cache->get('user', function () { return 'abcde'; }); $res = $cache->delete('user'); return new Response(var_export($res, true)); } } ?>

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

true

Пример

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

<?php namespace AppController; use SymfonyBundleFrameworkBundleControllerAbstractController; use SymfonyComponentHttpFoundationResponse; use SymfonyContractsCacheCacheInterface; use SymfonyComponentRoutingAttributeRoute; class CacheController extends AbstractController { #[Route('/cache/delete-missing', name: 'cache_delete_missing')] public function deleteMissing(CacheInterface $cache): Response { $res = $cache->delete('missing'); return new Response(var_export($res, true)); } } ?>

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

false

Пример

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

<?php namespace AppController; use SymfonyBundleFrameworkBundleControllerAbstractController; use SymfonyComponentHttpFoundationResponse; use SymfonyContractsCacheCacheInterface; use SymfonyComponentRoutingAttributeRoute; class CacheController extends AbstractController { #[Route('/cache/delete-check', name: 'cache_delete_check')] public function deleteCheck(CacheInterface $cache): Response { $cache->get('user', function () { return 'abcde'; }); $cache->delete('user'); $res = $cache->get('user', function () { return 'not found'; }); return new Response($res); } } ?>

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

"not found"

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

  • класс Cache,
    который предоставляет методы для работы с кешем
  • метод get,
    который получает значение из кеша по ключу
  • метод deleteItem,
    который удаляет элемент кеша через объект CacheItem
  • метод clear,
    который полностью очищает весь кеш
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить