首先是配置本地的memcached服务器,然后开启PHP的memcache扩展,才能使用memcache进行缓存操作。
下面是已经写好的几个常用的memcache操作方法:
/**
* @todo memcache 开启及常用操作封装
*/
/**
* @todo init memcache
* @return memcache link
*
*/
private function initMemcache(){
$memcache=new Memcache;
$memcache->connect(Yii::app()->params['memcacheserver']['host'],Yii::app()->params['memcacheserver']['port']);
return $memcache;
}
/**
* @todo set memcache
* @param $key
* @param $value string、array、json...
* @param 0 < $expire < 2592000
* @return true/false
*/
public function setMemcacheValue($key, $value, $expire){
$memcache=$this->initMemcache();
return $memcache->set($key , $value , 0 , $expire);
$memcache->close();
}
/**
* @todo get memcache value
* @param String $key
* @return String/object/array....
* 此处还可以优化,当一个KEY已经被删除或者整个MEMCACHE缓存被删除的时候可以提示不存在该KEY的值等
*/
public function getMemcacheValue($key){
$memcache=$this->initMemcache();
return $memcache->get($key);
$memcache->close();
}
/**
* @todo replace memcache value
* @param $key
* @param $value string、array、json...
* @return true/false
*/
public function replaceMemcacheValue($key,$value){
$memcache=$this->initMemcache();
return $memcache->replace($key,$value);
$memcache->close();
}
/**
* @todo delete memcache
* @param $key
* @return true/false
*/
public function deleteMemcache($key){
$memcache=$this->initMemcache();
return $memcache->delete($key);
$memcache->close();
}
/**
* @todo flush memcache
* @return true/false
*/
public function flushMemcache(){
$memcache=$this->initMemcache();
return $memcache->flush();
$memcache->close();
}
/**
* @todo memcache 服务开启以及常用操作封装完成
*/