Метод getMetadata класса CacheItem
Метод getMetadata класса CacheItem возвращает массив с информацией о текущем состоянии элемента кеша. В этом массиве содержится ключ expiry, который хранит время истечения срока действия элемента в виде объекта DateTimeInterface или значение null, если срок действия не установлен.
Метод не принимает параметров и возвращает ассоциативный массив. Если элемент не был сохранён или срок его действия не задан, ключ expiry будет содержать null.
Синтаксис
public function getMetadata(): array
Пример
Давайте создадим элемент кеша, установим время его жизни и выведем метаданные:
<?php
namespace AppController;
use SymfonyBundleFrameworkBundleControllerAbstractController;
use SymfonyComponentHttpFoundationResponse;
use SymfonyContractsCacheCacheInterface;
class CacheController extends AbstractController
{
public function index(CacheInterface $cache): Response
{
$item = $cache->getItem('article_key');
$item->set('article data');
$item->expiresAfter(3600);
$cache->save($item);
$metadata = $item->getMetadata();
return new Response(print_r($metadata, true));
}
}
?>
Результат выполнения кода:
Array
(
[expiry] => DateTimeImmutable Object
(
[date] => 2026-09-14 12:00:00.000000
[timezone_type] => 3
[timezone] => UTC
)
)
Пример
Давайте проверим метаданные элемента, для которого не задан срок действия:
<?php
namespace AppController;
use SymfonyBundleFrameworkBundleControllerAbstractController;
use SymfonyComponentHttpFoundationResponse;
use SymfonyContractsCacheCacheInterface;
class CacheController extends AbstractController
{
public function index(CacheInterface $cache): Response
{
$item = $cache->getItem('user_key');
$item->set('user data');
$cache->save($item);
$metadata = $item->getMetadata();
return new Response(print_r($metadata, true));
}
}
?>
Результат выполнения кода:
Array
(
[expiry] =>
)
Смотрите также
-
класс
CacheItem,
который представляет элемент кеша -
метод
expiresAfter,
который устанавливает время жизни элемента -
метод
get,
который возвращает значение элемента -
метод
save,
который сохраняет элемент в кеш