namespace Vendor\Redis;classDefaultRedis{private $redis;public function __construct($host='127.0.0.1',$port =3198,$auth = '#yr9XjB%b6k'){$this->redis = new\Redis();$this->redis->pconnect($host,$port);$this->redis->auth($auth);
}/**
* [set key-value设置 会覆盖]
* @ckhero
* @DateTime 2016-06-17
* @param [type] $name [缓存名字(传进来的参数可为数组)]
* @param [type] $value [缓存值]
* @param integer $expire [缓存有效期]*/
public function set($name,$value,$expire=0){if(is_array($name)){ //判断是否维数组
foreach($name as $key=>$val){if($expire==0){if(!$this->redis->set($val,$value[$key])){ //缓存失败则会中断
return false;
}
}else{if(!$this->redis->setex($val,$expire,$value[$key])){return false;
}
}
}return true;
}else{if($expire==0){return $this->redis->set($name,$value);
}else{return $res = $this->redis->setex($name,$expire,$value);
}
}
}/**
* [setnx 设置值不覆盖]
* @ckhero
* @DateTime 2016-06-17
* @param [type] $name [缓存名字]
* @param [type] $value [缓存的值]
* @return [type] [返回 成功(true)/失败(false)]*/
public function setnx($name,$value){return $this->redis->setnx($name,$value);
}
/set/getarr//**
* [setArr 将存入的数据进行序列化]
* @ckhero
* @DateTime 2016-10-27
* @param [type] $key [description]
* @param [type] $data [description]*/
public function setArr($key,$data){$this->set($key,serialize($data));
}public function getArr($key){return unserialize($this->get($key));