<?php /** * @example $mem = new Memcached(); * @example $getCache = $mem->get('test'); * @example MEMCACHE_HOST 主机 * @example MEMCACHE_PORT 端口 * @example MEMCACHE_TIMEOUT 缓存时间 */ class Memcached { private $memcache = null; /** * @desc 构造函数 */ public function __construct() { $this->memcache = new Memcache; $this->memcache->connect(MEMCACHE_HOST, MEMCACHE_PORT, MEMCACHE_TIMEOUT); } /** * 兼容php4 */ public function Memcached() { $this->__construct(); } /** * @desc 根据key获取Memcache的值 * @param string $name key名称 * @return array or string */ public function get($name,$isJson = true) { $value = $this->memcache->get($name); if($isJson) $value = json_decode($value, true); return $value; } /** * 设置缓存,如果存在就更新,不存在则添加,如果成功则返回 TRUE,失败则返回 FALSE。 * @param string $name key名称 * @param array or array $value value值 * @param boolean $ttl 是否压缩 * @param int $ext1 用来设置一个过期自动销毁的时间 * @return boolean */ public function set($name, $value, $ext1 = false, $ttl= 0) { return $this->memcache->set($name, $value, $ext1, $ttl); } /** * 添加缓存,如果成功则返回 TRUE,失败则返回 FALSE。 * @param string $name key名称 * @param array or array $value value值 * @param boolean $ttl 是否压缩 * @param int $ext1 用来设置一个过期自动销毁的时间 * @return boolean */ public function add($name, $value, $ext1 = false, $ttl= 0) { return $this->memcache->add($name, $value , $ext1, $ttl); } /** * @desc 删除缓存,如果成功则返回 TRUE,失败则返回 FALSE。 * @param string $name key名称 * @return boolean */ public function delete($name) { return $this->memcache->delete($name); } /** * @desc 关闭一个Memcache对象 * @return blloean */ public function close() { return $this->memcache->close(); } /** * @desc Increment item's value (加法操作) * @param string $name * @param int $value Increment the item by value . Optional and defaults to 1. * @return type */ public function increment($name , $value) { return $this->memcache->increment($name, $vlaue); } /** * @desc decrement item's value (减法操作) * @param string $name * @param int $value decrement the item by value . Optional and defaults to 1. * @return type */ public function decrement($name , $value) { return $this->memcache->decrement($name, $vlaue); } /** * @desc 获取进程池中所有进程的运行系统统计 * @return array */ public function getExtendedStats() { return $this->memcache->getExtendedStats(); } /** * @desc 返回服务器的一些运行统计信息 * @return array */ public function getStats() { return $this->memcache->getStats(); } /** * @desc 清空缓存,如果成功则返回 TRUE,失败则返回 FALSE。 * @return boolean */ public function flush() { return $this->memcache->flush(); } } ?>