is_compress = COMPRESSED ? MEMCACHE_COMPRESSED : false; $this->expire = MEM_EXPIRES ? MEM_EXPIRES : false; $this->cache = new Memcache(); $this->connect($g_memcahe_conf); } /** * @desc * 添加Memcache地址, 打开一个到Memcache的连接 */ public function connect($g_memcahe_conf) { // multi-server config if(!empty($g_memcahe_conf[0])){ foreach ($g_memcahe_conf as $conf){ $this->cache->addServer($conf['server'], $conf['port'], $conf['per'], $conf['weight'], $conf['timeout'], $conf['retry']); } } // single server config else{ $this->cache->addServer( $g_memcahe_conf['server'], $g_memcahe_conf['port'], $g_memcahe_conf['per'], $g_memcahe_conf['weight'], $g_memcahe_conf['timeout'], $g_memcahe_conf['retry']); } } /** * @desc * 向Memcache添加一个值,如果已经存在,则覆写 */ public function set($key, $val) { return $this->cache->set($key, $val, $this->is_compress,$this->expire); } /** * @desc * 添加一个值,如果已经存在,则返回false */ public function add($key, $val) { return $this->cache->add($key, $val, $this->is_compress,$this->expire); } /** * @desc * 替换一个已经存在Memcache服务器上的项目(功能类似Memcache::set) */ public function replace($key, $val) { return $this->cache->replace($key, $val, $this->is_compress,$this->expire); } /** * @desc * 删除一个Memcache上的key值 */ public function del($key) { return $this->cache->delete($key); } /** * @desc * 刷新所有Memcache上保存的项目 */ public function flush() { return $this->cache->flush(); } /** * @desc * 从Memcache上获取一个key值 * */ public function get($key) { return $this->cache->get($key); } /** * @desc * 获取进程池中所有进程的运行系统统计 */ public function getStats($par="") { return $this->cache->getExtendedStats($par); } } ?>