diff --git a/library/smarty/demo/plugins/cacheresource.apc.php b/library/smarty/demo/plugins/cacheresource.apc.php new file mode 100644 --- /dev/null +++ b/library/smarty/demo/plugins/cacheresource.apc.php @@ -0,0 +1,77 @@ + $v) { + $_res[$k] = $v; + } + + return $_res; + } + + /** + * Save values for a set of keys to cache + * + * @param array $keys list of values to save + * @param int $expire expiration time + * + * @return boolean true on success, false on failure + */ + protected function write(array $keys, $expire = null) { + foreach ($keys as $k => $v) { + apc_store($k, $v, $expire); + } + + return true; + } + + /** + * Remove values from cache + * + * @param array $keys list of keys to delete + * + * @return boolean true on success, false on failure + */ + protected function delete(array $keys) { + foreach ($keys as $k) { + apc_delete($k); + } + + return true; + } + + /** + * Remove *all* values from cache + * + * @return boolean true on success, false on failure + */ + protected function purge() { + return apc_clear_cache('user'); + } +}