PHP中使用redis函數的正確使用方法_第1頁
PHP中使用redis函數的正確使用方法_第2頁
PHP中使用redis函數的正確使用方法_第3頁
PHP中使用redis函數的正確使用方法_第4頁
PHP中使用redis函數的正確使用方法_第5頁
已閱讀5頁,還剩4頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

PHP中使用redis函數的正確使用方法PHP中使用redis函數的正確使用方法1/*1.Connection*/$redis=newRedis();$redis->connect('127.0.0.l',6379,1);〃短鏈接,本地host,端口為6379,超過1秒放棄鏈接$redis->open('127.0.0?l',6379,l);〃短鏈接(同上)$redis?>pconnect('127.0.0.l',6379,1);〃長鏈接,本地host,端口為6379,超過1秒放棄鏈接89101112131415$redis->popen(89101112131415$redis->auth('password');〃登錄驗證密碼,返回【true|false]$redis->select(0);〃選擇redis庫,0?15共16個庫$redis->close();〃釋放資源$redis->ping();〃檢查是否還再鏈接J+pong]$redis->ttl('key');〃查看失效時間[-1|timestamps]$redis?>persist('key');〃移除失效時間[1|0]$redis->sort「key,J$array]);〃返回或保存給定列表、集合、有序集合key中經過排序的元素,$array為參數limit等!【配合$array很強大】[array|false]17/*2.共性的運算歸類*/$redis?>expire('key',10);〃設置失效時間[true|false]$redis->move(,key',15);〃把當前庫中的key移動到15庫中[0|1]2://string$redis->strlen('key');〃獲取當前key的長度$redis->append('key',*string');//)Cstring追加到key現有的value中[追加后的個數]$redis->incr('key' 1,如不存在key,賦值為1(只對整數有效,存儲以10進制64位,redis中為str)[new_num|false]2627|282930$redis->incrby(*key*,$num);〃自增2627|282930$redis->decr('key');〃自減1,[new__num|false]$redis->decrby('key' 〃自減$num,[new_num|false]$redis->setex(*key',10,'value');//key=value,有效期為10秒[true]31//list$redis->llen(,key*);〃返回列表列y的長度》不存在存y返回0,[len|0]33//set$redis->scard「key,);〃返回集合key的基數(集合中元素的數量)。[num|0]$redis->sMove('keyl*,*key2*,'member');〃移動,將member元素從keyl36集合移動到key2集合。[1|0]3//Zset$redis?>zcard('key');〃返回集合key的基數(集合中元素的數量)。[num|0]$redis->zcount('key',0,T);〃返回有序集key中,score值在min和max之

4間(默認包括score值等于min或max)的成員。[num|0]41//hash$redis->hexists('key'field');〃查看hash中是否存在field,[1|0]$redis->hincrby('key','field*,$int_num);〃為哈希表key中的域field的㈠值力口上量(+|-)num,[new_num|false]$redis->hlen(,key,);〃返回哈希表key中域的數量。[num|0]46/*3.Server*/$redis->dbSize();〃返回當前庫中的key的個數$redis?>flushAll();〃清空整個redis[總true]$redis?>flushDB();〃清空當前redis庫[總true]$redis->save();〃同步??把數據存儲到磁盤-dump.rdb[true]$redis->bgsave();〃異步??把數據存儲到磁盤-dump.rdb[true]$redis->info();〃查詢當前redis的狀態[verson:2.4.5....]$redis->lastSave();〃上次存儲時間key的時間[timestamp]$redis->watch(,key'Jkeyn');〃監視一個(或多個)key,如果在事務執行之前這個(或這些)key被其他命令所改動,那么事務將被打斷[true]$redis->unwatch('key'Jkeyn');〃取消監視一個(或多個)key[true]$redis?>multi(Redis::MULTI);〃開啟事務,事務塊內的多條命令會按照先后順5:序被放進一個隊列當中,最后由EXEC命令在一個原子時間內執行。$redis->multi(Redis::PIPEL工NE);〃開啟管道,事務塊內的多條命令會按照先后6,順序被放進一個隊列當中,最后由EXEC命令在一個原子時間內執行。$redis->exec();〃執行所有事務塊內的命令,;【事務塊內所有命令的返回值,按命令執行的先后順序排列,當操作被打斷時,返回空值false]63/*4.String,鍵值對,創建更新同操作*/$redis->setOption(Redis::OPT_PREF工XJhf_');〃設置表前綴為hf_$redis->set('key',l);〃設置key=aavalue=l[true]$redis->mset($arr);〃設置一個或多個鍵值[true]$redis->setnx('key'?'value');//key=valueJkey存在返回false[|true]$redis->get('key');〃獲取key[value]$redis->mget($arr);//(string|arr),返回所查詢鍵的值$redis->del($key_arr);〃(string|arr)刪除key,支持數組批量刪除【返回刪71除個數】$redis->delete($key_str,$key2,$key3);〃刪除keys,[del_num]$redis?>getset('old_key'Jnew_value');〃先獲得key的值,然后重新賦7值,[old_value|false]75/*5.List棧的結構,注意表頭表尾,創建更新分開操作*/$redis->lpush('key'/value');〃增,只能將一個值value插入到列表key的77表頭,不存在就創建[列表的長度|false]$redis->rpush('key'/value');〃增,只能將一個值value插入到列表key的7表尾[列表的長度|false]$redis->llnsert('key',Redis::AFTER,'value',,new_value');〃增,將值value插入到列表key當中,位于值value之前或之后。[new_len|false]$redis->lpushx('key'/value');〃增,只能將一個值value插入到列表key的3表頭,不存在不創建[列表的長度|false]

$redis->rpushx('key'j'value');〃增,只能將一個值value插入到列表key的85表尾,不存在不創建[列表的長度|false]$redis->lpop('key,);〃刪,移除并返回列表key的頭元素,[被刪元素|false]$redis?>rpop('key');〃刪,移除并返回列表key的尾元素,[被刪元素|false]$redis->lrem('key','value;0);〃刪,根據參數count的值,移除列表中與參數value相等的元素count=(0|-n表頭向尾|+n表尾向頭移除n個value)[被移除9。的數量[0]$redis?>ltrim「key,,start,end);〃刪,列表修剪,保留(start,end)之間的值92[true|false]$redis?>lset('key',indexJnew_v');〃改,從表頭數,將列表key下標為第"index的元素的值為new_v,[true|false]$redis->lindex('key',index);〃查,返回列表key中,下標為index的元素9€[value|false]$redis->lrange(*key',0,-1);〃查,(start,stop|0,-1)返回列表key中指定區間內的元素,區間以偏移量start和stop指定。[array|false]99/*6.Set,沒有重復的member,創建更新同操作*/$redis->sadd('key'Jvaluel'Jvalue2'Jvaluen');〃增,改,將一個或多個member元素加入到集合key當中,已經存在于集合的member元素將被忽略。[insert_num]$redis?>srem('key'Jvaluel'Jvalue21'valuen');〃刪,移除集合key中的:一個或多個member元素,不存在的member元素會被忽略[del_num|false]$redis->smembers(*key*);//§,返回集合key中的所有成員[array|'*]$redis->sismember('key'「member');〃判斷member元素是否是集合key的成員口|0]$redis->spop('key');〃刪,移除并返回集合中的一個隨機元素[member|false]$redis->srandmember('key');〃查,返回集合中的一個隨機元素[member|false]$redis->sinter(,key「Jkey2','keyn,);〃查,返回所有給定集合的交集[array|false]$redis->sunion('keyl','key2,/keyn,);〃查,返回所有給定集合的并集[array|false]$redis->sdiff('keyl'Jkey2'Jkeyn');〃查,返回所有給定集合的差集[array|false]/*7.Zset,沒有重復的member,有排序順序,創建更新同操作*/$redis->zAdd(*key',$scorel,$memberl,$scoreN,$memberN);〃增,改,將一個或多個member元素及其score值加入到有序集key當中。[num|0]$redis->zrem('key*,'memberl','membern');〃刪,移除有序集key中的一個或多個成員,不存在的成員將被忽略。[del_num|0]$redis->zscore('key'「member');〃查,通過值反拿權[num|null]$redis->zrange('key',$start,$stop);〃查,通過(score從小到大)【排序名次范圍】拿member值,返回有序集key中,【指定區間內〕的成員[array|null]$redis->zrevrange('key"$start,$stop);〃查,通過(score從大到小)【排序名次范圍】拿member值,返回有序集key中,【指定區間內】的成員[array|null]

$redis->zrangebyscore('key',$min,$max[,$config]);//查,通過scroe權范圍拿member值,返回有序集key中,指定區間內的(從小到大排)成員[array|null]$redis->zrevrangebyscore(lclassRedisConnect2{3/***Redis的ip5 **@varstring*/constREDISHOSTNAME="";/**Redis的lclassRedisConnect2{3/***Redis的ip5 **@varstring*/constREDISHOSTNAME="";/**Redis的port11*$redis->zrank('key'「member');〃查,通過member值查(score從小到大)排名結果中的【member排序名次】[order|null]$redis->zrevrank('key,/member');〃查,通過member值查(score從大到小)排名結果中的【member排序名次】[order|null]$redis->ZINTERSTORE();〃交集$redis->ZUNIONSTORE();〃差集/*8.Hash,表結構,創建更新同操作*/$redis->hset('key'/field'「value');〃增,改,將哈希表key中的域field的值設為value,不存在創建,存在就覆蓋[1[0]$redis->hget('key,,,field,);〃查,取值【value|false】$arr=array(,one'=>lJ2J3);$arr2=array('one',0,1);$redis?>hmset('key',$arr);〃增,改,設置多值$3「「為(索引|關聯)數組/arr[key]=field,[true]$redis->hmget('key',$arr2);〃查,獲取指定下標的field,[$arr|false]$redis?>hgetall('key');〃查,返回哈希表key中的所有域和值。[當key不存在時,返回一個空表]$redis->hkeys('key*);〃查,返回哈希表key中的所有域。[當key不存在時,返回一個空表]$redis->hvals('key,);〃查,返回哈希表key中的所有值。[當key不存在時,返回一個空表]$redis->hdel('key1$arr2);〃刪,刪除指定下標的field,不存在的域將被忽略,[num|false]附:php連接redis數據庫單例類

131415161718192021222324252627282930313233343536373839404142434445464748495051525354*/constREDISPORT=6379;/私有化構造函數,防止類外實例化*私有化構造函數,防止類外實例化**@paramunknown_type$dbnumber*/privatefunction_construct()(//鏈接數據庫$this->redis=newRedis();$this->redis->connect(self::REDISHOSTNAME.self::REDISPORT,self::REDISTIMEOUT);$this->redis->auth(self::REDISPASSWORD);Redis的超時時間*@varint/constREDISTIMEOUT=0;/**Redis的password*@var

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論