亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > PHP > 正文

PHP操作Redis常用技巧

2020-03-22 18:44:37
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了PHP操作Redis常用技巧,結合實例形式總結分析了php針對redis的連接、認證、string、hash等操作技巧與注意事項,需要的朋友可以參考下

本文實例講述了PHP操作Redis常用技巧。分享給大家供大家參考,具體如下:

一、Redis連接與認證

//連接參數:ip、端口、連接超時時間,連接成功返回true,否則返回false$ret = $redis->connect('127.0.0.1', 6379, 30);//密碼認證:成功返回true,否則返回false$ret = $redis->auth('123456');

二、String操作

//設置鍵值:成功返回true,否則返回false$redis->set('mystr', 'Welcome!');//獲取鍵值:成功返回String類型鍵值,若key不存在或不是String類型則返回false$ret = $redis->get('mystr');//從某個key所存儲的字符串的指定偏移量開始,替換為另一指定字符串,成功返回替換后新字符串的長度。$ret = $redis->setRange('mystr', 7, ' to Beijing!');//獲取存儲在指定key中字符串的子字符串。$ret = $redis->getRange('mystr', 0, 6);//設置新值,返回舊值:若key不存在則設置值,返回false$ret = $redis->getSet('mystr', 'hi man');//一次設置多個鍵值對:成功返回true。$ret = $redis->mset(['name' => 'jet', 'age' => 18]);//一次獲取多個key的值:返回一個鍵值對數組,其中不存在的key值為false。$ret = $redis->mget(['name', 'age']);//設置指定key的值及其過期時間,單位:秒。//參數:鍵名,過期時間,鍵值。成功返回true。$ret = $redis->setex('name', 10, 'jetwu');//以毫秒為單位設置指定key的值和過期時間。成功返回true。$ret = $redis->psetex('name', 10, 'jetwu');//key的值不存在時,才為其設置值。key不存在且設置成功返回true,否則返回false。$ret = $redis->setnx('name', 'boby');//setnx命令的批量操作。只有在給定所有key都不存在的時候才能設置成功,只要其中一個key存在,所有key都無法設置成功。$ret = $redis->msetnx(['country' => 'China', 'city' => 'Shenzhen']);//獲取指定key存儲的字符串的長度,key不存在返回0,不為字符串返回false。$ret = $redis->strlen('name');//將指定key存儲的數字值增加1。若key不存在會先初始化為0再增加1,若key存儲的不是整數值則返回false。成功返回key新值。$ret = $redis->incr('age');//給指定key存儲的數字值增加指定增量值。$ret = $redis->incrBy('age', 10);//給指定key存儲的數字值增加指定浮點數增量。$ret = $redis->incrByFloat('age', 1.5);//將指定key存儲的數字值減一。$ret = $redis->decr('age');//將指定key存儲的數字值減去指定減量值。$ret = $redis->decrBy('age', 10);//為指定key追加值到原值末尾,若key不存在則相對于set()函數。$ret = $redis->append('mystr', 'haha');

三、Hash操作

//為hash表中的字段賦值。成功返回1,失敗返回0。若hash表不存在會先創建表再賦值,若字段已存在會覆蓋舊值。$ret = $redis->hSet('user', 'realname', 'jetwu');//獲取hash表中指定字段的值。若hash表不存在則返回false。$ret = $redis->hGet('user', 'realname');//查看hash表的某個字段是否存在,存在返回true,否則返回false。$ret = $redis->hExists('user', 'realname');//刪除hash表的一個字段,不支持刪除多個字段。成功返回1,否則返回0。$ret = $redis->hDel('user', 'realname');//同時設置某個hash表的多個字段值。成功返回true。$ret = $redis->hMset('user', ['name' => 'jet', 'age' => 18]);//同時獲取某個hash表的多個字段值。其中不存在的字段值為false。$ret = $redis->hMget('user', ['name', 'age']);//獲取某個hash表所有的字段和值。$ret = $redis->hGetAll('user');//獲取某個hash表所有字段名。hash表不存在時返回空數組,key不為hash表時返回false。$ret = $redis->hKeys('user');//獲取某個hash表所有字段值。$ret = $redis->hVals('user');//為hash表中不存在的字段賦值。若hash表不存在則先創建,若字段已存在則不做任何操作。設置成功返回true,否則返回false。$ret = $redis->hSetNx('user', 'realname', 'jetwu');//獲取某個hash表的字段數量。若hash表不存在返回0,若key不為hash表則返回false。$ret = $redis->hLen('user');//為hash表中的指定字段加上指定增量值,若增量值為負數則相當于減法操作。若hash表不存在則先創建,若字段不存在則先初始化值為0再進行操作,若字段值為字符串則返回false。設置成功返回字段新值。$ret = $redis->hIncrBy('user', 'age', 10);//為hash表中的指定字段加上指定浮點數增量值。$ret = $redis->hIncrBy('user', 'age', 1.5);

四、List操作

//從list頭部插入一個值。$ret = $redis->lPush('city', 'guangzhou');//從list尾部插入一個值。$ret = $redis->rPush('city', 'guangzhou');//獲取列表指定區間中的元素。0表示列表第一個元素,-1表示最后一個元素,-2表示倒數第二個元素。$ret = $redis->lrange('city', 0, -1);//查看隊列所有元素//將一個插入已存在的列表頭部,列表不存在時操作無效。$ret = $redis->lPushx('city', 'hangzhou');//將一個或多個值插入已存在的列表尾部,列表不存在時操作無效。$ret = $redis->rPushx('city', 'hangzhou');//移除并返回列表的第一個元素,若key不存在或不是列表則返回false。$ret = $redis->lPop('city');//移除并返回列表的最后一個元素,若key不存在或不是列表則返回false。$ret = $redis->rPop('city');//移除并獲取列表的第一個元素。如果列表沒有元素則會阻塞列表直到等待超時或發現可彈出元素為止。//參數:key,超時時間(單位:秒)//返回值:[0=>key,1=>html' target='_blank'>value],超時返回[]$ret = $redis->blPop('city', 10);//移除并獲取列表的最后一個元素。如果列表沒有元素則會阻塞列表直到等待超時或發現可彈出元素為止。//參數:key,超時時間(單位:秒)//返回值:[0=>key,1=>value],超時返回[]$ret = $redis->brPop('city', 10);//移除列表中最后一個元素,將其插入另一個列表頭部,并返回這個元素。若源列表沒有元素則返回false。$ret = $redis->rpoplpush('city', 'city2');//移除列表中最后一個元素,將其插入另一個列表頭部,并返回這個元素。如果列表沒有元素則會阻塞列表直到等待超時或發現可彈出元素為止。//參數:源列表,目標列表,超時時間(單位:秒)//超時返回false$ret = $redis->brpoplpush('city', 'city2', 10);//返回列表長度。$ret = $redis->lLen('city');//通過索引獲取列表中的元素。若索引超出列表范圍則返回false。$ret = $redis->lindex('city', 0);//通過索引設置列表中元素的值。若是索引超出范圍,或對一個空列表進行lset操作,則返回false。$ret = $redis->lSet('city', 2, 'changsha');//在列表中指定元素前或后面插入元素。若指定元素不在列表中,或列表不存在時,不執行任何操作。//參數:列表key,Redis::AFTER或Redis::BEFORE,基準元素,插入元素//返回值:插入成功返回插入后列表元素個數,若基準元素不存在返回-1,若key不存在返回0,若key不是列表返回false。$ret = $redis->lInsert('city', Redis::AFTER, 'changsha', 'nanjing');//根據第三個參數count的值,移除列表中與參數value相等的元素。//count > 0 : 從表頭開始向表尾搜索,移除與value相等的元素,數量為count。//count < 0 : 從表尾開始向表頭搜索,移除與value相等的元素,數量為count的絕對值。//count = 0 : 移除表中所有與value相等的值。//返回實際刪除元素個數$ret = $redis->lrem('city', 'guangzhou', -2);//對一個列表進行修剪,只保留指定區間的元素,其他元素都刪除。成功返回true。$ret = $redis->ltrim('city', 1, 4);

五、Set操作

//將一個元素加入集合,已經存在集合中的元素則忽略。若集合不存在則先創建,若key不是集合類型則返回false,若元素已存在返回0,插入成功返回1。$ret = $redis->sAdd('myset', 'hello');//返回集合中所有成員。$ret = $redis->sMembers('myset');//判斷指定元素是否是指定集合的成員,是返回true,否則返回false。$ret = $redis->sismember('myset', 'hello');//返回集合中元素的數量。$ret = $redis->scard('myset');//移除并返回集合中的一個隨機元素。$ret = $redis->sPop('myset');//返回集合中的一個或多個隨機成員元素,返回元素的數量和情況由函數的第二個參數count決定://如果count為正數,且小于集合基數,那么命令返回一個包含count個元素的數組,數組中的元素各不相同。//如果count大于等于集合基數,那么返回整個集合。//如果count為負數,那么命令返回一個數組,數組中的元素可能會重復出現多次,而數組的長度為count的絕對值。$ret = $redis->sRandMember('myset', 2);//移除集合中指定的一個元素,忽略不存在的元素。刪除成功返回1,否則返回0。$ret = $redis->srem('myset', 'hello');//迭代集合中的元素。//參數:key,迭代器變量,匹配模式,每次返回元素數量(默認為10個)$ret = $redis->sscan('myset', $it, 'a*', 5);//將指定成員從一個源集合移動到一個目的集合。若源集合不存在或不包含指定元素則不做任何操作,返回false。//參數:源集合,目標集合,移動元素$ret = $redis->sMove('myset', 'myset2', 'aaa');//返回所有給定集合之間的差集,不存在的集合視為空集。$ret = $redis->sDiff('myset', 'myset2', 'myset3');//將所有給定集合之間的差集存儲在指定的目的集合中。若目的集合已存在則覆蓋它。返回差集元素個數。//參數:第一個參數為目標集合,存儲差集。$ret = $redis->sDiffStore('myset3', 'myset', 'myset2');//返回所有給定集合的交集,不存在的集合視為空集。$ret = $redis->sInter('myset', 'myset2', 'myset3');//將所有給定集合的交集存儲在指定的目的集合中。若目的集合已存在則覆蓋它。返回交集元素個數。//參數:第一個參數為目標集合,存儲交集。$ret = $redis->sInterStore('myset4', 'myset', 'myset2', 'myset3');//返回所有給定集合的并集,不存在的集合視為空集。$ret = $redis->sUnion('myset', 'myset2', 'myset3');//將所有給定集合的并集存儲在指定的目的集合中。若目的集合已存在則覆蓋它。返回并集元素個數。//參數:第一個參數為目標集合,存儲并集。$ret = $redis->sUnionStore('myset4', 'myset', 'myset2', 'myset3');

六、Zset操作

//將一個或多個成員元素及其分數值加入到有序集當中。如果某個成員已經是有序集的成員,則更新這個成員的分數值,并通過重新插入這個成員元素,來保證該成員在正確的位置上。分數值可以是整數值或雙精度浮點數。$ret = $redis->zAdd('scores', 98, 'English', 90, 'physics');//返回有序集中指定區間內的成員。成員按分數值遞增排序,分數值相同的則按字典序來排序。//參數:第四個參數表示是否返回各個元素的分數值,默認為false。$ret = $redis->zRange('scores', 0, -1, true);//查看Zset所有成員以及它們各自的分數值//返回有序集中指定區間內的成員。成員按分數值遞減排序,分數值相同的則按字典序的逆序來排序。$ret = $redis->zReverseRange('scores', 0, -1, true);//返回有序集中指定分數區間的成員列表,按分數值遞增排序,分數值相同的則按字典序來排序。默認使用閉區間。$ret = $redis->zRangeByScore('scores', 90, 100, ['withscores'=>true]);//返回有序集中指定分數區間的成員列表,按分數值遞減排序,分數值相同的則按字典序的逆序來排序。注意,區間表示的時候大值在前,小值在后,默認使用閉區間。$ret = $redis->zRevRangeByScore('scores', 100, 90, ['withscores'=>true]);//迭代有序集合中的元素。//返回值:[元素名=>分數值,,..]$ret = $redis->zscan('scores', $it, '', 10);//返回指定有序集的元素數量。$ret = $redis->zCard('scores');//返回有序集中指定分數區間的成員數量。$ret = $redis->zCount('scores', 90, 100);//返回有序集中指定成員的分數值。若成員不存在則返回false。$ret = $redis->zScore('scores', 'math');//返回有序集中指定成員的排名,按分數值遞增排序。分數值最小者排名為0。$ret = $redis->zRank('scores', 'chemistry');//返回有序集中指定成員的排名,按分數值遞減排序。分數值最大者排名為0。$ret = $redis->zRevRank('scores', 'chemistry');//移除有序集中的一個或多個成員,忽略不存在的成員。返回刪除的元素個數。$ret = $redis->zRem('scores', 'chemistry', 'English');//移除有序集中指定排名區間的所有成員。$ret = $redis->zRemRangeByRank('scores', 0, 2);//移除有序集中指定分數值區間的所有成員。$ret = $redis->zRemRangeByScore('scores', 80, 90);//對有序集中指定成員的分數值增加指定增量值。若為負數則做減法,若有序集不存在則先創建,若有序集中沒有對應成員則先添加,最后再操作。$ret = $redis->zIncrBy('scores', 2, 'Chinese');//計算給定一個或多個有序集的交集,并將其存儲到一個目的有序集中。結果集中某個成員的分數值是所有給定集下該成員分數值之和。$ret = $redis->zinterstore('zset3', 'zset2', 'zset1');//計算給定一個或多個有序集的并集,并將其存儲到一個目的有序集中。結果集中某個成員的分數值是所有給定集下該成員分數值之和。$ret = $redis->zunionstore('zset3', 'zset2', 'zset1');

相關推薦:

PHP操作JSON方法大全

30個php操作redis常用的方法代碼例子

php操作redis的命令分享

以上就是PHP操作Redis常用技巧的詳細內容,更多請關注 其它相關文章!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国内成人精品一区| 亚洲美腿欧美激情另类| 中文字幕日韩av| 美女视频黄免费的亚洲男人天堂| 亚洲精品日韩久久久| 亚洲的天堂在线中文字幕| 日韩av在线天堂网| 欧美精品电影在线| 精品视频中文字幕| 欧美成年人视频| 国产精品亚洲欧美导航| 亚洲天堂2020| 精品亚洲精品福利线在观看| 久久免费在线观看| 精品国偷自产在线| 精品久久中文字幕久久av| 国产精品视频网站| 精品国产一区二区三区久久狼黑人| 日韩在线播放一区| 欧美性jizz18性欧美| 亚洲日韩中文字幕在线播放| 亚洲xxxx在线| 91亚洲va在线va天堂va国| 色狠狠av一区二区三区香蕉蜜桃| 2019日本中文字幕| 成人欧美一区二区三区黑人| 日韩精品福利在线| 欧美成人精品激情在线观看| 久久精品国产电影| 欧美中文字幕视频| 久久国产视频网站| 在线免费看av不卡| 亚洲免费高清视频| 亚洲欧美成人精品| 日韩欧美一区二区三区久久| 国产精品视频精品| 国产欧美亚洲视频| 欧美美女操人视频| 久久在线视频在线| 欧美日韩一区二区精品| 午夜精品福利电影| 亚洲精品日韩av| 日韩中文在线中文网在线观看| 欧美精品电影免费在线观看| 成人av番号网| 国产精品自拍视频| 在线播放日韩欧美| 亚洲国产欧美一区二区丝袜黑人| 成人黄色免费片| 欧美大片欧美激情性色a∨久久| 亚洲成人中文字幕| 欧美日韩国产中文精品字幕自在自线| 国产网站欧美日韩免费精品在线观看| 日韩中文视频免费在线观看| 亚洲人成啪啪网站| 国产成人在线一区二区| 国产精品久久久久999| 亚洲欧美在线一区| 91久久精品在线| 在线亚洲男人天堂| 日韩精品丝袜在线| 日韩免费在线免费观看| 97视频国产在线| 最近日韩中文字幕中文| 日韩免费在线观看视频| 国产精品一区二区三区久久| 亚洲精品成人久久| 成人欧美一区二区三区在线湿哒哒| 久久综合久中文字幕青草| 日韩中文在线观看| 亚洲欧美色图片| 亚洲欧美日韩精品久久亚洲区| 中文欧美在线视频| 日本精品视频网站| 91成人免费观看网站| 国产噜噜噜噜噜久久久久久久久| 亚洲香蕉伊综合在人在线视看| 久久精品99久久久久久久久| 欧美电影在线观看高清| 国产精品99久久久久久久久| 色狠狠av一区二区三区香蕉蜜桃| 国产精品日韩在线| 国产亚洲精品综合一区91| 国产黑人绿帽在线第一区| 久久久久久这里只有精品| 韩国精品久久久999| 日韩国产中文字幕| 久精品免费视频| 久久免费视频在线| 国产mv免费观看入口亚洲| 亚洲综合大片69999| 欧美裸体xxxxx| 日韩电影中文 亚洲精品乱码| 国产精品激情av在线播放| 国模叶桐国产精品一区| 97香蕉超级碰碰久久免费的优势| 国产精品伦子伦免费视频| 国产精品久久电影观看| 51久久精品夜色国产麻豆| 国产精品成人播放| 久久亚洲精品一区| 成人亚洲综合色就1024| 色综合91久久精品中文字幕| 欧美日韩美女在线| 亚洲变态欧美另类捆绑| 久久免费视频这里只有精品| 日韩色av导航| 日韩黄在线观看| 亚洲黄在线观看| 国内精品模特av私拍在线观看| 欧美亚洲国产视频小说| 欧美在线视频播放| 欧美激情精品久久久久久大尺度| 成年人精品视频| 在线播放日韩精品| 亚洲欧洲xxxx| 2019中文在线观看| 欧美精品在线观看91| 欧美日本高清视频| 久久理论片午夜琪琪电影网| 日本精品久久中文字幕佐佐木| 欧美一级成年大片在线观看| 日韩av123| 欧美激情亚洲视频| 欧美日韩亚洲激情| 国产成人自拍视频在线观看| 久久精品99久久久久久久久| 日韩精品在线视频观看| 亚洲最新视频在线| 久久视频在线免费观看| 疯狂欧美牲乱大交777| 欧美日韩成人在线视频| 亚洲成人精品视频| 欧美大成色www永久网站婷| 91情侣偷在线精品国产| 欧美国产亚洲视频| 欧美疯狂做受xxxx高潮| 久久福利网址导航| 久久精品美女视频网站| 国产精品美女免费视频| 亚洲高清av在线| 久久久免费观看视频| 中文字幕亚洲欧美一区二区三区| 欧美性猛交xxxx黑人猛交| 国产美女精品视频| wwwwwwww亚洲| 亚洲视频在线播放| 久久不射热爱视频精品| 92国产精品视频| 日韩av在线天堂网| 欧美重口另类videos人妖| 国产主播喷水一区二区| 成人欧美一区二区三区在线| 国产精品高精视频免费| 亚洲欧洲自拍偷拍| 亚洲精品视频网上网址在线观看| 国产91对白在线播放| 欧美视频中文在线看| 成人精品久久av网站| 亚洲精品狠狠操| 国产激情久久久久| 国产精品扒开腿做爽爽爽视频| 国产成人精品优优av| 久久久精品国产网站|