cache = $cache; } /** * Clear the cache for this instance only * @param array $memberIDs A list of member IDs */ public function flushMemberCache($memberIDs = null) { if (!$this->cache) { return; } // Hard flush, e.g. flush=1 if (!$memberIDs) { $this->cache->clear(); } if ($memberIDs && is_array($memberIDs)) { foreach (self::$categories as $category) { foreach ($memberIDs as $memberID) { $key = $this->generateCacheKey($category, $memberID); $this->cache->delete($key); } } } } /** * @param $category * @param $memberID * @return string */ public function generateCacheKey($category, $memberID) { return "{$category}__{$memberID}"; } }