- Модуль: main
- Путь к файлу: ~/bitrix/modules/main/classes/general/cache_memcache.php
- Класс: CPHPCacheMemcache
- Вызов: CPHPCacheMemcache::clean
function clean($basedir, $initdir = false, $filename = false)
{
if(is_object(self::$obMemcache))
{
if($filename <> '')
{
if(!isset(self::$basedir_version[$basedir]))
{
self::$basedir_version[$basedir] = self::$obMemcache->get($this->sid.$basedir);
}
if(self::$basedir_version[$basedir] === false || self::$basedir_version[$basedir] === '')
{
return true;
}
if($initdir !== false)
{
$initdir_version = self::$obMemcache->get(self::$basedir_version[$basedir]."|".$initdir);
if($initdir_version === false || $initdir_version === '')
{
return true;
}
}
else
{
$initdir_version = "";
}
self::$obMemcache->replace(self::$basedir_version[$basedir]."|".$initdir_version."|".$filename, "", 0, 1);
}
else
{
if($initdir <> '')
{
if(!isset(self::$basedir_version[$basedir]))
{
self::$basedir_version[$basedir] = self::$obMemcache->get($this->sid.$basedir);
}
if(self::$basedir_version[$basedir] === false || self::$basedir_version[$basedir] === '')
{
return true;
}
self::$obMemcache->replace(self::$basedir_version[$basedir]."|".$initdir, "", 0, 1);
}
else
{
if(isset(self::$basedir_version[$basedir]))
{
unset(self::$basedir_version[$basedir]);
}
self::$obMemcache->replace($this->sid.$basedir, "", 0, 1);
}
}
return true;
}
return false;
}