php 连接memcache

上个blog记录了php两种 memcache client的方式。现在简单的写了一个class,放到一起。可以配置实用任意只用方式。


class MCache
{

    private static $server  = array('127.0.0.1', 11211);
    private static $client  = 'memcached'; // memcache or memcached

    private static function get_memcache()
    {
        static $memcache;
        if (!is_object($memcache))
        {
            $memcache = self::$client === 'memcached' ?  new Memcached() : new Memcache ;
            $memcache->addServer(self::$server[0],self::$server[1]);
        }
        return $memcache;
    }

    public static  function set($key, $value, $expire=600)
    {
        self::$client === 'memcached' ?  self::get_memcache()->set($key, $value, $expire)
                                :  self::get_memcache()->set($key, $value, MEMCACHE_COMPRESSED, $expire);
    }

    public static  function get($key)
    {
        return self::get_memcache()->get($key);
    }

}

MCache::set('test_one', 'value_one', 60); # 60 Sec
print_r(MCache::get('test_one'));



你可能感兴趣的:(PHP,server,function,object,memcached,Class)