很有用;以下是redis官方提供的命令使用技巧:
https://github.com/owlient/phpredis(支持redis 2.0.4)
$redis = new Redis();
參數host: string,服務地址port: int,端口號timeout: float,鏈接時長 (可選, 默認為 0 ,不限鏈接時間)注: 在redis.conf中也有時間,默認為300
如果該key不存在,return false
如果寫入成功,return ture
$redis->setex('key', 3600, 'value'); // sets key → value, with 1h TTL.
$redis->setnx('key', 'value');$redis->setnx('key', 'value');
返回已經刪除key的個數(長整數)$redis->delete('key1', 'key2');$redis->delete(array('key3', 'key4', 'key5'));
同時給多個key賦值$redis->mset(array('key0' => 'value0', 'key1' => 'value1'));
參數可選Redis::MULTI或Redis::PIPELINE. 默認是 Redis::MULTIRedis::MULTI:將多個操作當成一個事務執行Redis::PIPELINE:讓(多條)執行命令簡單的,更加快速的發送給服務器,但是沒有任何原子性的保證discard:刪除一個事務返回值multi(),返回一個redis對象,并進入multi-mode模式,一旦進入multi-mode模式,以后調用的所有方法都會返回相同的對象,只到exec()方法被調用。watch, unwatch (代碼測試后,不能達到所說的效果)監測一個key的值是否被其它的程序更改。如果這個key在watch 和 exec (方法)間被修改,這個 MULTI/EXEC 事務的執行將失敗(return false)unwatch 取消被這個程序監測的所有key參數,一對key的列表$redis->watch('x');$ret = $redis->multi() ->incr('x') ->exec();subscribe *方法回調。注意,該方法可能在未來里發生改變publish *發表內容到某一個通道。注意,該方法可能在未來里發生改變exists判斷key是否存在。存在 true 不在 false
1、list左邊(頭)添加一個值為value的元素,返回0和1
$redis - > [lr]push($key,$values);
[lr]Pushx 如果存在就不添加
[lr]Pop 刪除,成功則返回刪除元素
2、lSize 返回鏈表的元素個數
$redis -> lSize($key);
3、lSet 給key的list中index位置的元素賦值為value
$redis -> lSet($key,$index,$values);
4、lGet,IIndex 返回key的list中index位置的元素
$redis -> lGet($key,$index);
5、lRange,lGetRange 返回key的list中start 至 end 之間的元素(end=-1,返回所有),負值表示從后面開始計算
$redis -> lRange($key,$start,$end)
6、lTrim,listTrim 截取名稱key的list,保留start - end 之間的元素
$redis -> lTrim($key,$start,$end);
7、lRem,lRemove 刪除count個名稱為key的list中值為value的元素。count=0,刪除所有值為value的元素;count>0從頭到尾刪除count個值為value的元素,count<0從尾到頭刪除count個值為value的元素
新聞熱點
疑難解答