Как сбросить этой функцией кеш для определённой сущности. Скажем для категории или продуктов.
Если у кого есть знания поделитесь.
Спасибо!
Может оно вам конечно нужно именно через нее, но значительно быстрее и проще удалить тем же rm если файловый кеш, например /var/cache/registry/block_content_main_products.view/, из редиса тоже можно типа так redis-cli -n 0 KEYS ‘cache:block_content_main_products.view*’ | xargs redis-cli -n 0 DEL
Просто хотелось бы работать в контексте CMS так сказать. Раз оно есть ну должно же как то работать. Хотя писалось явно не для общего пользования. Для прямого удаления извояли
/**
* Удаляет все файлы в кеше шаблонов, содержащие определенную подстроку в имени, рекурсивно во всех поддиректориях.
* @param string $subname Подстрока, которую нужно искать в именах файлов.
*/
function kill_cache_by_subname($subname) {
$directory = Registry::get('config.dir.cache_templates');
try {
$iterator = new RecursiveIteratorIterator(
new RecursiveDirectoryIterator($directory, RecursiveDirectoryIterator::SKIP_DOTS),
RecursiveIteratorIterator::CHILD_FIRST
);
foreach ($iterator as $file) {
if (strpos($file->getFilename(), $subname) !== false) {
if ($file->isFile()) {
unlink($file->getRealPath()); // Удаляет файл
}
}
}
} catch (Exception $e) {
fn_print_die("Произошла ошибка: " . $e->getMessage());
}
}