Июль 5, 2024
Теги: Основное, Кеш, Хранение данных
Запись и получение данных из/в управляемый кеш с помощью объекта, получаемого из \Bitrix\Main\Application::getInstance()->getManagedCache().
Сохранить или получить данные для идентификатора кеша "my_cache_id":
$cache = \Bitrix\Main\Data\Cache::createInstance();
$taggedCache = \Bitrix\Main\Application::getInstance()->getTaggedCache();
$cachePath = 's1/my_cache_dir';
if ($cache->initCache(86400, 'my_cache_id', $cachePath))
{
$data = $cache->getVars(); // получаем данные из кеша
}
elseif($cache->startDataCache())
{
$taggedCache->startTagCache($cachePath);
$taggedCache->registerTag('tag1'); // будет доступен сброс по тегу 'tag1'
$taggedCache->registerTag('tag2'); // а также 'tag2'
// $cache->abortDataCache(); // если нужно прервать создание кеша
$data = array(
'key1' => 'value1',
'key2' => 'value2',
);
$taggedCache->endTagCache();
$cache->endDataCache($data); // сохраняем данные в кеш
}
Очистка кеша для тега 'tag1':