php如何使用redis-key與value的用法-創(chuàng)新互聯(lián)

這篇文章主要講解了“php如何使用redis-key與value的用法”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“php如何使用redis-key與value的用法”吧!

成都創(chuàng)新互聯(lián)公司是由多位在大型網(wǎng)絡(luò)公司、廣告設(shè)計公司的優(yōu)秀設(shè)計人員和策劃人員組成的一個具有豐富經(jīng)驗的團隊,其中包括網(wǎng)站策劃、網(wǎng)頁美工、網(wǎng)站程序員、網(wǎng)頁設(shè)計師、平面廣告設(shè)計師、網(wǎng)絡(luò)營銷人員及形象策劃。承接:成都做網(wǎng)站、網(wǎng)站建設(shè)、外貿(mào)營銷網(wǎng)站建設(shè)、網(wǎng)站改版、網(wǎng)頁設(shè)計制作、網(wǎng)站建設(shè)與維護、網(wǎng)絡(luò)推廣、數(shù)據(jù)庫開發(fā),以高性價比制作企業(yè)網(wǎng)站、行業(yè)門戶平臺等全方位的服務(wù)。

本文實例講述了php操作redis常見方法。分享給大家供大家參考,具體如下:

關(guān)于key的操作:

1、獲取所有key,不包括值;

$redis ->keys("*");

2、獲取一個或多個key的值,【不限制數(shù)據(jù)類型】;

$redis ->mget([$key1,$key2]);//參數(shù)為數(shù)組;

3、設(shè)置指定key的生命周期;

$redis ->expire($key,30);//設(shè)置生命周期為30秒;

4、獲取指定key的剩余生命周期;

$redis->tTl($key);

關(guān)于value的操作:

1、string類型

$key = 'user';
$redis->delete($key); 
$redis ->set($key,'11');
$redis ->setNx($key,3);//當(dāng)$key不存在時設(shè)置才生效;如果存在則值仍然不變;
$redis ->decr($key);//當(dāng)$key的值是數(shù)字時可以通過該方法自減1
$redis ->incr($key);//當(dāng)$key的值是數(shù)字時可以通過該方法自增1
$redis ->delete($key);//刪除指定鍵值
$redis ->getMultiple ([$key,'lx']);//獲取多個鍵對應(yīng)的值 返回值:返回包含所有鍵的值的數(shù)組
$redis ->get($key);//獲取指定key的值
$redis ->exists($key);//判斷鍵是否存在

2、list鏈表

$key = 'user';
$redis ->delete($key); //每次進來刪除$key數(shù)據(jù) 用于測試
$redis ->lPush($key,1);//從列表頭部添加元素
$redis ->rPush($key,2);//從列表尾部添加元素
$redis ->rPush($key,4);
$redis ->lPush($key,4); 
$redis ->lPop($key); 從鏈表頭部刪除一個元素,并且返回這個元素的值,由于這個特性是的list非常適合做高并發(fā)秒殺
$redis ->lRemove($key,2,3);//刪除$key中的2這個值,最多刪除三個都為2的值;
$redis ->lSet($key,2,30);//將下標為2的元素設(shè)置為30;返回值:成功返回查找的值,失敗false
$redis ->lGet($key,0);//獲取指定下標的值 返回值:成功返回查找的值,失敗false
$redis ->lTrim($key,0,1);//截取保留前兩個值,返回值:成功返回查找的值,失敗false;一般配合lGetRange使用
$redis ->lGetRange($key,0,-1);//獲取所有l(wèi)ist鏈表中$key的所有值【值可以重復(fù)】 返回值:成功返回查找的值,失敗false
$redis ->lLen ($key);//統(tǒng)計元素個數(shù) 同$redis ->lsize ($key)一樣 返回值:成功返回查找的值,失敗false

個人總結(jié):誰最后lpush說明第一個元素為誰;誰最后一個rpush代表最后一個元素為誰;

3、set集合 【和list不同的是set不允許有同樣的值】

$key1 = 'user1';
$key2 = 'user2';
$redis->delete($key1);
$redis->delete($key2);
$redis ->sAdd($key1,'2');//為一個鍵添加一個值 返回值:成功返回true,失敗false
$redis ->sAdd($key1,'1');
$redis ->sAdd($key2,'2');
$redis ->sAdd($key2,'3');
$redis ->sRemove($key,'1');//刪除指定值 返回值:成功返回true,失敗false
$redis ->sContains($key1,'3');//判斷$key1中是否有指定值 返回值:成功返回true,失敗false
$redis ->sSize($key1);//返回集合中存儲值的數(shù)量 返回值:成功返回數(shù)組個數(shù),失敗0
$redis ->sPop($key1);//隨機移除并返回key中的一個值 返回值:成功返回刪除的值,失敗false
$redis ->sUnion($key2,$key1);//返回所有指定鍵的并集 返回值:成功返回合并后的集,失敗false
$redis ->sInterStore ('user3',$key2,$key1);//執(zhí)行sInter命令并把結(jié)果儲存到新建的集合中 返回值:成功返回,交集的個數(shù),失敗false
$redis ->sInter($key1,$key2);//返回兩個指定集合的交集 返回值:成功返回數(shù)組交集,失敗false
$redis ->sUnionStore('user3',$key2,$key1);//執(zhí)行sunion命令并把結(jié)果儲存到新建的變量中 返回值:成功返回,交集的個數(shù),失敗false 
$redis ->sMembers($key1);//獲取集合內(nèi)所有值
$redis ->sisMember ($key1,2);//如果成員元素2是集合$key1,的成員返回1,如果成員元素不是集合的成員,或key不存在返回0
$redis ->sDiffstore('user3',$key1,$key2);//執(zhí)行sdiff命令并把結(jié)果儲存到新建的變量中。返回值:成功返回數(shù)字,失敗false
$redis ->sdiff($key1,$key2);//返回第一個集合中存在并在第二個集合中不存在的結(jié)果 返回值:成功返回數(shù)組,失敗false 返回值:成功返回交集的個數(shù),失敗false 
$redis ->sort($key1);//當(dāng)集合內(nèi)都為數(shù)值時返回排序之后的結(jié)果 只要有一個值不是數(shù)值都不返回結(jié)果
$redis ->sCard($key1);//返回SET容器的成員數(shù)

4、hash對象 【可以理解為每一個key代表一條數(shù)據(jù),同數(shù)據(jù)庫中的行一樣】

$key1 = 'user';
$key2 = 'user1';
$redis ->delete($key1);
$redis ->hSet($key1,'name','lx');//hash中每一個key對應(yīng)一個或者多個鍵值對;就好比mysql中的字段和值;而$key類似一條數(shù)據(jù)
$redis ->hSet($key1,'age','保密');
$redis ->hSet($key1,'sex','男');
$redis ->hMGet($key2,['name','age']);//獲得哈希表中多個 key 的值
$redis ->hMSet($key2,['name'=>'lx','age'=>27]);//給哈希表設(shè)置多個key的值
$redis ->hVals($key1);//獲得哈希表中所有的值 順序是隨機的
$redis ->hKeys($key1);//獲得哈希表中所有的key 順序是隨機的
$redis ->hDel($key1,'user1');//刪除一個表中指定的key,如果hash表不存在或?qū)?yīng)的key不存在,返回false
$redis ->hLen($key1);//哈表中key的數(shù)量說白了就是記錄的條數(shù)和數(shù)據(jù)庫中的行一樣
$redis ->hGet($key1,'user2');
$redis ->hSetNx($key1,'user2','lx');//當(dāng)哈希表中不存在某key時,給該key設(shè)置一個值
$redis ->hExists($key1,'user1');//檢查哈希key是否存在 返回值:存在返回 true, 不存在返回 false
$redis ->hGetAll($key2);// 獲得一個哈希表中所有的key和value
$redis ->hIncrByFloat($key1,'user3',3.5);//給哈希表中某key增加一個浮點數(shù)值,前提是key中已存在的值必須是數(shù)值類型
$redis ->hIncrBy($key1,'user3',3);//給哈希表中某key增加一個整數(shù)值,前提是key中已存在的值必須是數(shù)值類型

感謝各位的閱讀,以上就是“php如何使用redis-key與value的用法”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對php如何使用redis-key與value的用法這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!

名稱欄目:php如何使用redis-key與value的用法-創(chuàng)新互聯(lián)
標題鏈接:http://bm7419.com/article34/godse.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站建設(shè)域名注冊、企業(yè)建站、定制網(wǎng)站網(wǎng)頁設(shè)計公司、虛擬主機

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

手機網(wǎng)站建設(shè)