php之ThinkPHP的memcached类的修改


在Think\Cache\Driver\Memcached.class.php中,增加方法获取错误信息的方法,方便调试,

public function getError(){
if($this->handler->error){
return $this->handler->error;
}else{
$code = $this->handler->getResultCode();
$errMessage = $this->handler->getResultMessage();
return 'Memcached Error : Code ' . $code .',Message:'. $errMessage . '.';
}
}

控制器中:

    public function test(){
$mem_config = array(
'servers'=>[['127.0.0.1',]],
'prefix'=>'think',
'expire'=>
);
$mc = new \Think\Cache\Driver\Memcached($mem_config);
//这里会返回一个Memcached配置的对象,不能判断是否实例化成功。
//需要在设置缓存是来判断是否成功
$res = $mc->set("study", "Hello memcached!");
if($res === false){
$a = $mc->getError();
var_dump($a);
}else{
//获取
$study = $mc->get('study');
dump($study);
}
}

05-22 07:22