function clean($basedir, $initdir = false, $filename = false) { global $DB; if (is_object(self::$obMemcache)) { if ($this->bQueue && class_exists('CModule') && CModule::IncludeModule('cluster')) { foreach (self::$arOtherGroups as $group_id => $tmp) { CClusterQueue::Add($group_id, 'CPHPCacheMemcacheCluster', $basedir, $initdir, $filename); } } if (strlen($filename)) { $basedir_version = self::$obMemcache->get($this->sid . $basedir); if ($basedir_version === false || $basedir_version === '') { return true; } if ($initdir !== false) { $initdir_version = self::$obMemcache->get($basedir_version . "|" . $initdir); if ($initdir_version === false || $initdir_version === '') { return true; } } else { $initdir_version = ""; } self::$obMemcache->replace($basedir_version . "|" . $initdir_version . "|" . $filename, "", 0, 1); } else { if (strlen($initdir)) { $basedir_version = self::$obMemcache->get($this->sid . $basedir); if ($basedir_version === false || $basedir_version === '') { return true; } self::$obMemcache->replace($basedir_version . "|" . $initdir, "", 0, 1); } else { self::$obMemcache->replace($this->sid . $basedir, "", 0, 1); } } return true; } return false; }