PHP对memcache操作类
程序员文章站
2023-12-22 20:57:34
...
span style=font-size:18px;class myMemcache { private $memcache; /** * 一般建议这2个值做成常量的形式 */ public function __construct($host = 192.102.1.8, $port = 6379) { $this-memcache = new Memcache(); $this-memcache-connect($host, $port);
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();
}
}