<?php
/**
* Class cache
* string 類型操做
* wanghang
* time:16/02/26
*/
class cache{
protected $resis;
public function __construct(){
$this->redis = new Redis();
$this->redis->connect('192.168.1.162', 6380);
}
/**
* 向 redis 中寫入值
*
* @param $key string int
* @param $value string
* @return bool true or false
*/
public function set($key,$value){
return $this->redis->set($key,$value);
}
/**
* 向redis中讀取值
*
* @param $key string
* @return bool|string 沒有值就返回false
*/
public function get($key){
$value=$this->redis->get($key);
return $value;
//return unserialize($value);
}
/**
* 帶生存時間的寫入值
*
* @param $key string
* @param $time int
* @param $value string
* @return bool true or flase
*/
public function setex($key,$time,$value){
return $this->redis->setex($key,$time,$value);
}
/**
* 判斷是否重複的,寫入值
*
* @param $key string
* @param $value string
* @return bool true(不重複) or false(重複)
*/
public function setnx($key,$value){
return $this->redis->setnx($key,$value);
}
/**
* 刪除指定key的值
*
* @param $key array array($key1,$key2)
* return int 已經刪除key的個數
*/
public function delete($key){
return $this->redis->delete($key);
}
/**
* 獲得一個key的生存時間 (永久數據返回-1,找不到值返回-2)
*
* @param $key string 對應的鍵值
* @return int 剩餘生成時間
*/
public function ttl($key){
return $this->redis->ttl($key);
}
/**
* 移除Key的生存時間,使之成爲永久的數據
*
* @param $key string
* @return bool true|false
*/
public function persist($key){
return $this->redis->persist($key);
}
/**
* 同時給多個key賦值
*
* @param $key_array array array('key'=>'value','key1'=>'value1)
* @return bool true|false
*/
public function mset($key_array){
return $this->redis->mset($key_array);
}
/**
* 判斷 key 值是否存在
* @param $key string
* @return bool true|false
*/
public function exists($key){
return $this->redis->exists($key);
}
/**
* 通過測試,在redis中 incr $key 默認的key的值進行自增1 incrby $key $value向key中增長對應的值
* 在php擴展中incr也可進行incrBy的操做(作加法)
*
* @param $key string
* @return int
*/
public function incr($key,$value=''){
if(is_int($value)){
return $this->redis->incr($key,$value);//同incrBy
}else{
return $this->redis->incr($key);
}
}
/**
* 向指定鍵的鍵值增長對相應的值
*
* @param $key string
* @param $value int
* @return int
*/
public function incrBy($key,$value){
return $this->redis->incrBy($key,$value);
}
/**
* *通過測試,在redis中 decr $key 默認的key的值進行自增1 decrby $key $value向key中增長對應的值
* 在php擴展中decr也可進行decrBy的操做(作減法)
*
* @param $key
* @param $value
* @return int
*/
public function decr($key,$value){
if(is_int($value)){
return $this->redis->decr($key,$value);
}else{
return $this->redis->decr($key);
}
}
/**
* 向指定鍵的鍵值減去對相應的值
*
* @param $key string
* @param $value int
* @return int
*/
public function decrBy($key,$value){
return $this->redis->decrBy($key,$value);
}
/**
* 返回原來key中的值,並將value寫入key
*
* @param $key string
* @param $value string
* @return string
*/
public function getSet($key,$value){
return $this->redis->getSet($key,$value);
}
/**
* string,名稱爲key的string的值在後面加上value
*
* @param $key string
* @param $value string
* @return int 追加後字符串的長度
*/
public function append($key,$value){
return $this->redis->append($key,$value);
}
/**
* 獲取key的字符串的長度
*
* @param $key string
* @return int
*/
public function strlen($key){
return $this->redis->strlen($key);
}
}