From abd65b0c8a4c032ebe8ed6e65d0bb9d071acfd06 Mon Sep 17 00:00:00 2001 From: Michael Save Date: Wed, 11 Apr 2012 01:18:38 +1000 Subject: small cleanup --- inc/cache.php | 211 +++++++++++++++++++++++++++++----------------------------- 1 file changed, 106 insertions(+), 105 deletions(-) (limited to 'inc/cache.php') diff --git a/inc/cache.php b/inc/cache.php index cc3f4be0..3881672e 100644 --- a/inc/cache.php +++ b/inc/cache.php @@ -1,112 +1,113 @@ addServers($config['cache']['memcached']); - break; - case 'php': - self::$cache = Array(); - break; - } + +class Cache { + private static $cache; + public static function init() { + global $config; + + switch($config['cache']['enabled']) { + case 'memcached': + self::$cache = new Memcached(); + self::$cache->addServers($config['cache']['memcached']); + break; + case 'php': + self::$cache = Array(); + break; } - public static function get($key) { - global $config, $debug; - - $key = $config['cache']['prefix'] . $key; - - $data = false; - switch($config['cache']['enabled']) { - case 'memcached': - if(!self::$cache) - self::init(); - $data = self::$cache->get($key); - break; - case 'apc': - $data = apc_fetch($key); - break; - case 'xcache': - $data = xcache_get($key); - break; - case 'php': - $data = isset(self::$cache[$key]) ? self::$cache[$key] : false; - break; - } - - // debug - if($data && $config['debug']) { - $debug['cached'][] = $key; - } - - return $data; + } + public static function get($key) { + global $config, $debug; + + $key = $config['cache']['prefix'] . $key; + + $data = false; + switch($config['cache']['enabled']) { + case 'memcached': + if(!self::$cache) + self::init(); + $data = self::$cache->get($key); + break; + case 'apc': + $data = apc_fetch($key); + break; + case 'xcache': + $data = xcache_get($key); + break; + case 'php': + $data = isset(self::$cache[$key]) ? self::$cache[$key] : false; + break; } - public static function set($key, $value, $expires = false) { - global $config; - - $key = $config['cache']['prefix'] . $key; - - if(!$expires) - $expires = $config['cache']['timeout']; - - switch($config['cache']['enabled']) { - case 'memcached': - if(!self::$cache) - self::init(); - self::$cache->set($key, $value, $expires); - break; - case 'apc': - apc_store($key, $value, $expires); - break; - case 'xcache': - xcache_set($key, $value, $expires); - break; - case 'php': - self::$cache[$key] = $value; - break; - } + + // debug + if($data && $config['debug']) { + $debug['cached'][] = $key; } - public static function delete($key) { - global $config; - - $key = $config['cache']['prefix'] . $key; - - switch($config['cache']['enabled']) { - case 'memcached': - if(!self::$cache) - self::init(); - self::$cache->delete($key); - break; - case 'apc': - apc_delete($key); - break; - case 'xcache': - xcache_unset($key); - break; - case 'php': - unset(self::$cache[$key]); - break; - } + + return $data; + } + public static function set($key, $value, $expires = false) { + global $config; + + $key = $config['cache']['prefix'] . $key; + + if(!$expires) + $expires = $config['cache']['timeout']; + + switch($config['cache']['enabled']) { + case 'memcached': + if(!self::$cache) + self::init(); + self::$cache->set($key, $value, $expires); + break; + case 'apc': + apc_store($key, $value, $expires); + break; + case 'xcache': + xcache_set($key, $value, $expires); + break; + case 'php': + self::$cache[$key] = $value; + break; + } + } + public static function delete($key) { + global $config; + + $key = $config['cache']['prefix'] . $key; + + switch($config['cache']['enabled']) { + case 'memcached': + if(!self::$cache) + self::init(); + self::$cache->delete($key); + break; + case 'apc': + apc_delete($key); + break; + case 'xcache': + xcache_unset($key); + break; + case 'php': + unset(self::$cache[$key]); + break; } - public static function flush() { - global $config; - - switch($config['cache']['enabled']) { - case 'memcached': - if(!self::$cache) - self::init(); - return self::$cache->flush(); - case 'apc': - return apc_clear_cache('user'); - case 'php': - self::$cache[$key] = Array(); - break; - } - - return false; + } + public static function flush() { + global $config; + + switch($config['cache']['enabled']) { + case 'memcached': + if(!self::$cache) + self::init(); + return self::$cache->flush(); + case 'apc': + return apc_clear_cache('user'); + case 'php': + self::$cache[$key] = Array(); + break; } + + return false; } - +} + -- cgit v1.3