PHP 对 memcache操作类
程序员文章站
2023-12-23 18:07:45
...
class myMemcache { private $memcache; /** * 一般建议这2个值做成常量的形式 */ public function __construct($host = '192.102.1.8', $port = 6379) { $this->memcache = new Memcache(); $this->memcache->connect($host, $port); return $this->memcache; } /** * add 添加一个新key,但是如果 key已经在服务端存在,此操作会失败。 * @param string $Key KEY名称 * @param string $value 值----可以是数组,对象,单值 * @param int $timelift 生存时间 add生存时间默认为0表示数据用不过期 */ public function add($key, $value, $timeLife) { if ($time > 0) { $retMes = $this->memcache->add($key, $value, MEMCACHE_COMPRESSED, $timeLife); } else { $retMes = $this->memcache->add($key, $value); } return $retMes; } /** * set?置一致key 修改键名的值 * @param string $key 键名 * @param string $value 键值 * @param int $timeLife 生命周期 */ public function set($key, $value, $timeLife) { if ($timeLife > 0) { $retMes = $this->memcache->set($key, $value, MEMCACHE_COMPRESSED, $timeLife); } else { $retMes = $this->memcache->set($key, $value); } return $retMes; } /** * 获取key * @param string $key 键名 */ public function get($key) { $retMes = $this->memcache->get($key); return $retMes; } /** * 删除单个key * @param string $key 键名 */ public function deleteKey($key) { $retMes = $this->memcache->delete($key); return $retMes; } /** * 删除所有key */ public function deleteAll() { return $this->memcache->flush(); } /** * 返回memcache对象 * memcache我们只封装了常用的一部分 * 拿着这个对象就可以直接调用memcache自身方法 * eg:$memcache->memcacheOtherMethods()->getStats() getStats方法没封 */ public function memcacheOtherMethods() { return $this->memcache; } /** * 释放 */ public function __destruct() { $this->memcache->close(); }}