30個php操作redis常用方法程式碼範例
這篇文章主要介紹了30個php操作redis常用方法代碼範例,本文其實不只30個方法,可以操作string類型、list類型和set類型的資料,需要的朋友可以參考下
redis的操作很多的,以前看到一個比較全的博客,但是現在找不到了。查個東西搜半天,下面整理一下php處理redis的例子,個人覺得常用一些例子。下面的例子都是基於php-redis這個擴充的。
1,connect
描述:實例連接到一個Redis.
參數:host: string,port: int
回傳值:BOOL 成功回傳:TRUE;失敗回傳:FALSE
範例:
$redis = new redis();
$result = $redis->connect('127.0.0.1', 6379);var_dump($result); //結果:bool(true)
?
2,set
描述:設定key和value的值
回傳值:BOOL 成功回傳:TRUE;失敗回傳:FALSE
範例:
? ();
$redis->connect('127.0.0.1', 6379);
$result = $redis->set('test',"11111111111");
var_dump($result); (true)
3,get
描述:取得指定鍵的值
參數:string或BOOL 如果鍵不存在,則傳回FALSE。否則,傳回指定鍵對應的value值。
範例:
$redis = new redis();
$redis->connect('127.0.0.1', 6379);
,$result = $cedis'); ;
var_dump($result); //結果:string(11) "1111111111"
4,delete
4,delete
的參數,每一個關鍵的陣列:key1 key2 key3 … keyN
回傳值:刪除的項數
範例:
$redis = new redis();
$redis->php
$redis = new redis();
$redis->connect('127.0. 0.1', 6379);
$redis->set('test',"111111111111");
echo $redis->get('test'); //結果:11111111111111
($Ered)' );
var_dump($redis->get('test')); //結果:bool(false)
5,setnxx ,設定關鍵值參數
參數:key value
回傳值:BOOL 成功回傳:TRUE;失敗回傳:FALSE
範例:
connect('127.0.0.1', 6379);
$redis->set('test',"1111111111111");
$redis->setnx('test',"222222222");
> get('test'); //結果:1111111111111
$redis->delete('test');
$redis->setnx('test',"2222222");
echo $testredis-get('222 '); //結果:22222222
?>
6,exists
描述:驗證指定的鍵是否有
參數
$redis = new redis();
$redis->connect('127.0.0.1', 6379);
var_ump; $redis->exists('test')); //結果:bool(true)
?>
7,incr
描述:數字增大鍵值鍵值鍵將會被加到鍵的值
實例:
$redis = new redis();
$redis->connect('127.0.0.1', 6379$redis->connect('127.0.0.1', 6379); $redis->set('test',"123");
var_dump($redis->incr("test")); //結果:int(124)
?>
8,decr
參數:key value:將被加到鍵的值
回傳值:INT the new value
$redis = new redis();
$redis->connect('127.0.0. ', 6379);
$redis->set('test',"123");
var_dump($redis->decr("test")); //結果:int(122)
?>
9,getMultiple
參數:其中包含鍵值的列表數組
返回值:傳回包含所有鍵的值的數組
$redis = new redis();
$redis->connect('127.0.0.1', 6379);
$redis->set('test1',"1");
$redis-> set('test2',"2");
$result = $redis->getMultiple(array('test1','test2'));
print_r($result); //結果:Array ( [0] = > 1 [1] => 2 )
?>
10,lpush
描述:由列表頭部加上字串值。如果不存在該鍵則建立該清單。如果該鍵存在,且不是一個列表,則傳回FALSE。
參數:key,value
回傳值:成功傳回陣列長度,失敗false
實例:
$redis = new redis();
$redis->connect('$redis = new redis();
$redis->connect('127. 6379);
$redis->delete('test');
var_dump($redis->lpush("test","111")); //結果:int(1)
var_dump($redis->lpush ("test","222")); //結果:int(2)
?>
描述:由列表尾部加上字串值。如果不存在該鍵則建立該清單。如果該鍵存在,且不是一個列表,則傳回FALSE。
參數:key,value
回傳值:成功回傳陣列長度,失敗false
範例:
$redis = new redis();
$redis->7$0. 6379);
$redis->delete('test');
var_dump($redis->lpush("test","111")); //結果:int(1)
var_dump($redis->lpush ("test","222")); //結果:int(2)
var_dump($redis->rpush("test","333")); //結果:int(3)
var_dump($ redis->rpush("test","444")); //結果:int(4)
?>
描述:傳回與移除清單的第一個元素
參數:key
回傳值:成功傳回第一個元素的值,失敗回傳false
範例:
$redis = new redis();
$redis->connect('127.0. ', 6379);
$redis->delete('test');
$redis->lpush("test","111");
$redis->lpush("test","222");
$redis->rpush("test","333");
$redis->rpush("test","444");
var_dump($redis->lpop("test")); //結果: string(3) "222"
?>
描述:傳回的清單的長度。如果清單不存在或為空,則指令傳回0。如果該鍵不是列表,則命令傳回FALSE。
參數:Key
回傳值:成功傳回陣列長度,失敗false
範例:
$redis = new redis();
$redis->php
$redis = new redis();
$redis->conconnect('127. ;
$redis->delete('test');
$redis->lpush("test","111");
$redis->lpush("test","222");
$redis-> rpush("test","333");
$redis->rpush("test","444");
?>
14,lget
描述:傳回指定鍵儲存在清單中指定的元素。 0第一個元素,1第二個… -1最後一個元素,-2的倒數第二…錯誤的索引或鍵不指向列表則傳回FALSE。
參數:key index
範例:
$redis = new redis();
$redis = new redis();
$redis = new redis();
', 6379);
$redis->lpush("test","111");
$redis->lpush("test","222");
$redis->rpush("test","444");
var_dump($redis->lget("test",3)); //結果:string(3) "444"?>
$redis = new redis();
$redis->connect('127.0.0.1', 6379);
$redis->delete('test');
$redtestis->lpush("testis->delete('test');
$redtestis->lpush("testis->lpush("test');
$redtestis->lpush("testis->lpush("test');
$redtestis->lpush(" ","111");
$redis->lpush("test","222");
var_dump($redis->lget("test",1)); //結果:string(3) "111 "
var_dump($redis->lset("test",1,"333")); //結果:bool(true)
?>
16,lgetrange
描述:
傳回在該區域中的指定鍵列表中開始到結束儲存的指定元素,lGetRange(key, )。 0第一個元素,1第二個元素… -1最後一個元素,-2的倒數第二…
參數:key start end
範例:
$redis = new redis();
$redis->connect('127.0.0.1', 6379);
$redis->delete('test');
$redtestis->lpush("testis->delete('test');
$redtestis->lpush("testis->lpush("test');
$redtestis->lpush(" ","111");
$redis->lpush("test","222");
print_r($redis->lgetrange("test",0,-1)); //結果:Array ( [ 0] => 222 [1] => 111 )
17,lremove
描述:從清單中從頭部開始移除個符合的值。如果count為零,所有符合的元素都被刪除。如果count是負數,內容從尾部開始刪除。
參數:key count value
範例:
$redis = new redis();
$redis = new redis();
0.1', 6379);
$redis->delete('test');
$redis->lpush('test','b');
$redis->lpush('test','c');
print_r($redis->lgetrange('test', 0, -1) ); //結果:Array ( [0] => c [1] => b [2] => a [3] => a )
var_dump($redis->lremove('test','a', 2)); //結果:int(2)print_r($redis->lgetrange('test', 0, -1)); //結果:Array ( [0] => c [1] => b )
?>
描述:為一個Key加上一個值。如果這個值已經在這個Key中,則回傳FALSE。
參數:key value
回傳值:成功回傳true,失敗false
範例:
$redis-?php $redis = new redis();
$redis->connect('127. ;
$redis->delete('test');var_dump($redis->sadd('test','111')); //結果:bool(true)
var_dump($redis->sadd(' test','333')); //結果:bool(true)
print_r($redis->sort('test')); //結果:Array ( [0] => 111 [1] => 333 )
?>
19,sremove
描述:刪除Key中指定的value值
參數:key member
回傳值:true or false
範例= new redis();
$redis->connect('127.0.0.1', 6379);
$redis->delete('test');
$redis->sadd('test','111');
$redis->sremove('test','111');
print_r($redis->sort('test')); //結果:Array ( [0] => 333 )
20,smove
參數:srcKeyKeystKey
$redis = new redis();
$redis->connect('127.0.0.1', 6379);
$redtest->dredtestis-predtest; delete('test1');
$redis->sadd('test','111');
$redis->sadd('test','333');
$redis->sadd('test1', '222');
$redis->sadd('test1','444');
$redis->smove('test',"test1",'111');
print_r($redis->sort( 'test1')); //結果:Array ( [0] => 111 [1] => 222 [2] => 444 )
21,scontains21,scontains3檢查是否存在指定的值。
參數:key value
回傳值:true or false
範例:
$redis = new redis();
$redis->connect('127.0.0.1', 6379);
$redis->delete('test');
$redtestis->sadd('testis->sadd('test');
$redtestis->saddx ','111');
$redis->sadd('test','112');
$redis->sadd('test','113');
var_dump($redis->scontains('test ', '111')); //結果:bool(true)
?>
描述:傳回集合中儲存值的數量
參數:key
值:成功傳回數組組個數,失敗0
範例:
$redis = new redis();
$redis->connect('127.0.0.1', 6379$redis->connect('127.0.0.1', 6379$redis); test');
$redis->sadd('test','111');
$redis->sadd('test','112');
echo $redis->ssize('test'); / /結果:2
?>
23,spop
描述:隨機移除並傳回key中的一個值
參數:key
傳回值:成功傳回刪除的值,失敗false範例
$redis = new redis();
$redis->connect('127.0.0.1', 6379);
$redis->delete('test'); ("test","111");
$redis->sadd("test","222");
$redis->sadd("test","333");
var_dump($redis->spop ("test")); //結果:string(3) "333"
?>
24,sinter
參數:key1, key2, keyN
回傳值:成功傳回陣列交集,失敗false範例:
$redis->delete('test');
$redis->sadd("test","111");
$redis->sadd("test","222");
$redis->sadd("test","333");
$redis->sadd("test1","111");
$redis->sadd("test1","444");
var_dump( $redis->sinter("test","test1")); //結果:array(1) { [0]=> string(3) "111" }
?>
25,sinterstore
描述:執行sInter指令並將結果儲存到新建的變數中。
參數:Key: dstkey, the key to store the diff into.
Keys: key1, key2… keyN. key1..keyN are intersected as in sInter.
回傳值:成功傳回,交集的數,失敗false
範例:
$redis = new redis();
$redis->connect('127.0.0.1', 6379);
$redis-deteete($)$
->sadd("test","111");
$redis->sadd("test","222");
$redis->sadd("test","333");
$redis-> sadd("test1","111");
$redis->sadd("test1","444");
var_dump($redis->sinterstore('new',"test","test1")); //結果:int(1)
var_dump($redis->smembers('new')); //結果:array(1) { [0]=> string(3) "111" }
?>
26,sunion
描述:
傳回一個所有指定鍵的並集參數:
Keys: key1, key2, … , keyN
返回值:成功返回後的範例,失敗合併後的範例
$redis->connect('127.0.0.1', 6379); $redis->delete('test'); sadd("test","111");
$redis->sadd("test","222");
$redis->sadd("test","333");
$redis->sadd( "test1","111");
$redis->sadd("test1","444");
print_r($redis->sunion("test","test1")); //結果:Array ( [0] => 111 [1] => 222 [2] => 333 [3] => 444 )
?>
27,sunionstore
27,sunionstore
27,sunionstore
把新指令說明結果:儲存給新指令的變數中。
Key: dstkey, the key to store the diff into.
Keys: key1, key2… keyN. key1..keyN are intersected as in sInter.🎜回傳值:成功傳回,交集的數,失敗false🎜範例:🎜🎜🎜 🎜$redis = new redis();
$redis->connect('127.0.0.1', 6379);
$redis->delete('test');
$redtestis->sadd("testis->delete('test');
$redtestis->sadd(" ","111");
$redis->sadd("test","222");
$redis->sadd("test","333");
$redis->sadd("test1", "111");
$redis->sadd("test1","444");
var_dump($redis->sinterstore('new',"test","test1")); //結果:int( 4)
print_r($redis->smembers('new')); //結果:Array ( [0] => 111 [1] => 222 [2] => 333 [3] => 444 )
? >
描述:返回第一個集合中存在並在其他所有集合中不存在的結果
參數:Keys: key1, key2, … , keyN: Any number of keys corresponres sets in redis.
回傳值:成功傳回數組,失敗false
範例:
$redis = new redis();
$redis = new redis();
$redis-connect($,1790. ;
$redis->delete('test');
$redis->sadd("test","111");
$redis->sadd("test","222");
$redis-> sadd("test","333");
$redis->sadd("test1","111");
print_r($redis-> sdiff("test","test1")); //結果:Array ( [0] => 222 [1] => 333 )
?>
29,sdiffstore
iffsd並將結果儲存到新建的變數中。
參數:
Key: dstkey, the key to store the diff into.
Keys: key1, key2, … , keyN: Any number of keys corresponding to sets in redis
$redis = new redis();
$redis->connect('127.0.0.1', 6379);
$redis->delete('test'); ("test","111");
$redis->sadd("test","222");
$redis->sadd("test","333");
$redis->sadd(" test1","111");
$redis->sadd("test1","444");
var_dump($redis->sdiffstore('new',"test","test1")); //結果:int(2)
print_r($redis->smembers('new')); //結果:Array ( [0] => 222 [1] => 333 )
?>
傳回集合的內容
參數:Key: key
回傳值:An array of elements, the contents of the set.
範例:
$redis->delete('test');
$redis->sadd("test","111");
$redis-> sadd("test","222");
print_r($redis->smembers('test')); //結果:Array ( [0] => 111 [1] => 222 )
?>

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

PHP 8.4 帶來了多項新功能、安全性改進和效能改進,同時棄用和刪除了大量功能。 本指南介紹如何在 Ubuntu、Debian 或其衍生版本上安裝 PHP 8.4 或升級到 PHP 8.4

Visual Studio Code,也稱為 VS Code,是一個免費的原始碼編輯器 - 或整合開發環境 (IDE) - 可用於所有主要作業系統。 VS Code 擁有大量針對多種程式語言的擴展,可以輕鬆編寫

JWT是一種基於JSON的開放標準,用於在各方之間安全地傳輸信息,主要用於身份驗證和信息交換。 1.JWT由Header、Payload和Signature三部分組成。 2.JWT的工作原理包括生成JWT、驗證JWT和解析Payload三個步驟。 3.在PHP中使用JWT進行身份驗證時,可以生成和驗證JWT,並在高級用法中包含用戶角色和權限信息。 4.常見錯誤包括簽名驗證失敗、令牌過期和Payload過大,調試技巧包括使用調試工具和日誌記錄。 5.性能優化和最佳實踐包括使用合適的簽名算法、合理設置有效期、

字符串是由字符組成的序列,包括字母、數字和符號。本教程將學習如何使用不同的方法在PHP中計算給定字符串中元音的數量。英語中的元音是a、e、i、o、u,它們可以是大寫或小寫。 什麼是元音? 元音是代表特定語音的字母字符。英語中共有五個元音,包括大寫和小寫: a, e, i, o, u 示例 1 輸入:字符串 = "Tutorialspoint" 輸出:6 解釋 字符串 "Tutorialspoint" 中的元音是 u、o、i、a、o、i。總共有 6 個元

靜態綁定(static::)在PHP中實現晚期靜態綁定(LSB),允許在靜態上下文中引用調用類而非定義類。 1)解析過程在運行時進行,2)在繼承關係中向上查找調用類,3)可能帶來性能開銷。

本教程演示瞭如何使用PHP有效地處理XML文檔。 XML(可擴展的標記語言)是一種用於人類可讀性和機器解析的多功能文本標記語言。它通常用於數據存儲

PHP的魔法方法有哪些? PHP的魔法方法包括:1.\_\_construct,用於初始化對象;2.\_\_destruct,用於清理資源;3.\_\_call,處理不存在的方法調用;4.\_\_get,實現動態屬性訪問;5.\_\_set,實現動態屬性設置。這些方法在特定情況下自動調用,提升代碼的靈活性和效率。

PHP和Python各有優勢,選擇依據項目需求。 1.PHP適合web開發,尤其快速開發和維護網站。 2.Python適用於數據科學、機器學習和人工智能,語法簡潔,適合初學者。
