Heim > Backend-Entwicklung > PHP-Tutorial > 30 Codebeispiele für gängige PHP-Operationen und Redis-Methoden

30 Codebeispiele für gängige PHP-Operationen und Redis-Methoden

藏色散人
Freigeben: 2023-04-07 15:24:01
nach vorne
2768 Leute haben es durchsucht

In diesem Artikel werden hauptsächlich 30 Codebeispiele für den Betrieb von Redis in PHP vorgestellt. Dieser Artikel enthält tatsächlich mehr als 30 Methoden, mit denen Sie String-Typ-, Listentyp- und Set-Typ-Daten verarbeiten können

Es gibt viele Beispiele für die PHP-Verarbeitung von Redis. Ich persönlich denke, dass einige Beispiele häufig verwendet werden. Die folgenden Beispiele basieren alle auf der Erweiterung php-redis.

1, verbinden

Beschreibung: Die Instanz ist mit einem Redis verbunden.

Parameter: Host: String, Port: int

Rückgabewert: BOOL Erfolgreiche Rückgabe: TRUE; Fehlerrückgabe: FALSE

Beispiel:

connect('127.0.0.1', 6379); 
var_dump($result); //结果:bool(true) 
?>
Nach dem Login kopieren

2, set

Beschreibung: Schlüssel setzen und Wert Wert

Parameter: Schlüsselwert

Rückgabewert: BOOL Erfolgsrückgabe: TRUE; Fehlerrückgabe: FALSE

Beispiel:

connect('127.0.0.1', 6379); 
$result = $redis->set('test',"11111111111"); 
var_dump($result);    //结果:bool(true) 
?>
Nach dem Login kopieren

3 , get

Beschreibung: Wert über den angegebenen Schlüssel abrufen

Parameter: Schlüssel

Rückgabewert: Zeichenfolge oder BOOL Wenn der Schlüssel nicht vorhanden ist, geben Sie FALSE zurück . Andernfalls wird der Wert zurückgegeben, der dem angegebenen Schlüssel entspricht.

Beispiel:

connect('127.0.0.1', 6379); 
$result = $redis->get('test'); 
var_dump($result);   //结果:string(11) "11111111111" 
?>
Nach dem Login kopieren

4, delete

Beschreibung: Den angegebenen Schlüssel löschen

Parameter: ein Schlüssel oder eine undefinierte Zahl von Parametern, Array für jeden Schlüssel: key1 key2 key3 ... keyN

Rückgabewert: Anzahl gelöschter Elemente

Beispiel:

connect('127.0.0.1', 6379); 
$redis->set('test',"1111111111111"); 
echo $redis->get('test');   //结果:1111111111111 
$redis->delete('test'); 
var_dump($redis->get('test'));  //结果:bool(false) 
?>
Nach dem Login kopieren

5, setnx

Beschreibung: Wenn der Schlüssel nicht in der Datenbank vorhanden ist, legen Sie den Schlüsselwertparameter fest

Parameter: Schlüsselwert

Rückgabewert: BOOL Rückgabe bei Erfolg: TRUE ; Rückgabe bei Fehler: FALSE

Beispiel:

connect('127.0.0.1', 6379); 
$redis->set('test',"1111111111111"); 
$redis->setnx('test',"22222222"); 
echo $redis->get('test');  //结果:1111111111111 
$redis->delete('test'); 
$redis->setnx('test',"22222222"); 
echo $redis->get('test');  //结果:22222222 
?>
Nach dem Login kopieren

6, existiert

Beschreibung: Überprüfen Sie, ob der angegebene Schlüssel existiert

Parameterschlüssel

Rückgabewert: Bool Erfolgreiche Rückgabe: TRUE; Fehlerrückgabe: FALSE

Beispiel:

connect('127.0.0.1', 6379); 
$redis->set('test',"1111111111111"); 
var_dump($redis->exists('test'));  //结果:bool(true) 
?>
Nach dem Login kopieren

7, incr

Beschreibung: Numerisch inkrementierender gespeicherter Schlüsselwert.

Parameter: Schlüsselwert: Der Wert, der dem Schlüssel hinzugefügt wird

Rückgabewert: INT der neue Wert

Instanz:

connect('127.0.0.1', 6379); 
$redis->set('test',"123"); 
var_dump($redis->incr("test"));  //结果:int(124) 
var_dump($redis->incr("test"));  //结果:int(125) 
?>
Nach dem Login kopieren

8, decr

Beschreibung: Schlüsselwert in numerischer Dekrementierung speichern.

Parameter: Schlüsselwert: Der Wert, der dem Schlüssel hinzugefügt wird

Rückgabewert: INT der neue Wert

Instanz:

connect('127.0.0.1', 6379); 
$redis->set('test',"123"); 
var_dump($redis->decr("test"));  //结果:int(122) 
var_dump($redis->decr("test"));  //结果:int(121) 
?>
Nach dem Login kopieren

9 , getMultiple

Beschreibung: Ruft die Werte aller angegebenen Schlüssel ab. Wenn ein oder mehrere Schlüssel nicht vorhanden sind, ist der Wert dieses Schlüssels im Array falsch

Parameter: Array von Listen mit den Schlüsselwerten

Rückgabewert: Gibt ein Array zurück, das die enthält Werte aller Schlüssel

Beispiel:

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 ) 
?>
Nach dem Login kopieren

10, lpush

Beschreibung: Fügen Sie einen Zeichenfolgenwert aus dem hinzu Kopf der Liste. Erstellen Sie die Liste, wenn der Schlüssel nicht vorhanden ist. Wenn der Schlüssel existiert und keine Liste ist, geben Sie FALSE zurück.

Parameter: Schlüssel, Wert

Rückgabewert: Gibt die Array-Länge zurück, wenn erfolgreich, false bei Fehler

Instanz:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
var_dump($redis->lpush("test","111"));   //结果:int(1) 
var_dump($redis->lpush("test","222"));   //结果:int(2) 
?>
Nach dem Login kopieren

11, rpush

Beschreibung: Fügen Sie einen Zeichenfolgenwert vom Ende der Liste hinzu. Erstellen Sie die Liste, wenn der Schlüssel nicht vorhanden ist. Wenn der Schlüssel existiert und keine Liste ist, geben Sie FALSE zurück.

Parameter: Schlüssel, Wert

Rückgabewert: Gibt die Array-Länge bei Erfolg zurück, false bei Fehler

Beispiel:

connect('127.0.0.1', 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) 
?>
Nach dem Login kopieren

12, lpop

Beschreibung: Das erste Element der Liste zurückgeben und entfernen

Parameter: Schlüssel

Rückgabewert: Das erste Element erfolgreich zurückgeben Wert, bei Fehler false zurückgeben

Beispiel:

connect('127.0.0.1', 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" 
?>
Nach dem Login kopieren

13, lsize,llen

Beschreibung: Die Länge des zurückgegebene Liste. Wenn die Liste nicht existiert oder leer ist, gibt der Befehl 0 zurück. Wenn der Schlüssel keine Liste ist, gibt dieser Befehl FALSE zurück.

Parameter: Schlüssel

Rückgabewert: Gibt die Array-Länge bei Erfolg zurück, false bei Fehler

Beispiel:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->lpush("test","111"); 
$redis->lpush("test","222"); 
$redis->rpush("test","333"); 
$redis->rpush("test","444"); 
var_dump($redis->lsize("test"));  //结果:int(4) 
?>
Nach dem Login kopieren

14 , lget

Beschreibung: Gibt das angegebene Element zurück, das in der Liste mit dem angegebenen Schlüssel gespeichert ist. 0 für das erste Element, 1 für das zweite ... -1 für das letzte Element, -2 für das vorletzte Element ... Gibt FALSE zurück, wenn der falsche Index oder Schlüssel nicht auf die Liste zeigt.

Parameter: Schlüsselindex

Rückgabewert: Den Wert des angegebenen Elements erfolgreich zurückgeben, falsch bei Fehler

Beispiel:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->lpush("test","111"); 
$redis->lpush("test","222"); 
$redis->rpush("test","333"); 
$redis->rpush("test","444"); 
var_dump($redis->lget("test",3));  //结果:string(3) "444" 
?>
Nach dem Login kopieren

15, lset

Beschreibung: Weisen Sie dem in der Liste angegebenen Index einen neuen Wert zu. Wenn der Index nicht vorhanden ist, geben Sie false zurück.

Parameter: Schlüssel Indexwert

Rückgabewert: true bei Erfolg, false bei Misserfolg

Beispiel:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->lpush("test","111"); 
$redis->lpush("test","222"); 
var_dump($redis->lget("test",1));  //结果:string(3) "111" 
var_dump($redis->lset("test",1,"333"));  //结果:bool(true) 
var_dump($redis->lget("test",1));  //结果:string(3) "333" 
?>
Nach dem Login kopieren

16, lgetrange

Beschreibung:

Gibt das angegebene Element zurück, das von Anfang bis Ende in der angegebenen Schlüsselliste im Bereich gespeichert ist, lGetRange(key, start, end). 0 erstes Element, 1 zweites Element... -1 letztes Element, -2 vorletztes...

Parameter: Schlüssel Start Ende

Rückgabewert: Gibt den gefundenen Wert erfolgreich zurück, fehlgeschlagen false

Beispiel:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->lpush("test","111"); 
$redis->lpush("test","222"); 
print_r($redis->lgetrange("test",0,-1));  //结果:Array ( [0] => 222 [1] => 111 ) 
?>
Nach dem Login kopieren

17, lremove

Beschreibung: Entfernen Sie aus dem Kopf der Liste die Anzahl übereinstimmender Werte. Wenn count Null ist, werden alle übereinstimmenden Elemente entfernt. Wenn count negativ ist, wird der Inhalt am Ende gelöscht.

Parameter: Schlüsselanzahlwert

Rückgabewert: Gibt die Anzahl der gelöschten Elemente zurück, wenn erfolgreich, false, wenn fehlgeschlagen

Beispiel:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->lpush('test','a'); 
$redis->lpush('test','b'); 
$redis->lpush('test','c'); 
$redis->rpush('test','a'); 
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 ) 
?>
Nach dem Login kopieren

18, sadd

Beschreibung: Einem Schlüssel einen Wert hinzufügen. Wenn dieser Wert bereits in diesem Schlüssel enthalten ist, geben Sie FALSE zurück.

Parameter: Schlüsselwert

Rückgabewert: wahr bei Erfolg, falsch bei Fehler

Beispiel:

connect('127.0.0.1', 6379); 
$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 ) 
?>
Nach dem Login kopieren

19 , sremove

描述:删除Key中指定的value值

参数:key member

返回值:true or false

范例:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->sadd('test','111'); 
$redis->sadd('test','333'); 
$redis->sremove('test','111'); 
print_r($redis->sort('test'));    //结果:Array ( [0] => 333 ) 
?>
Nach dem Login kopieren

20,smove

描述:将Key1中的value移动到Key2中

参数:srcKey dstKey member

返回值:true or false

范例

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->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 ) 
?>
Nach dem Login kopieren

21,scontains

描述:检查集合中是否存在指定的值。

参数:key value

返回值:true or false

范例:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->sadd('test','111'); 
$redis->sadd('test','112'); 
$redis->sadd('test','113'); 
var_dump($redis->scontains('test', '111')); //结果:bool(true) 
?>
Nach dem Login kopieren

22,ssize

描述:返回集合中存储值的数量

参数:key

返回值:成功返回数组个数,失败0

范例:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->sadd('test','111'); 
$redis->sadd('test','112'); 
echo $redis->ssize('test');   //结果:2 
?>
Nach dem Login kopieren

23,spop

描述:随机移除并返回key中的一个值

参数:key

返回值:成功返回删除的值,失败false

范例:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->sadd("test","111"); 
$redis->sadd("test","222"); 
$redis->sadd("test","333"); 
var_dump($redis->spop("test"));  //结果:string(3) "333" 
?>
Nach dem Login kopieren

24,sinter

描述:返回一个所有指定键的交集。如果只指定一个键,那么这个命令生成这个集合的成员。如果不存在某个键,则返回FALSE。

参数:key1, key2, keyN

返回值:成功返回数组交集,失败false

范例:

connect('127.0.0.1', 6379); 
$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" } 
?>
Nach dem Login kopieren

25,sinterstore

描述:执行sInter命令并把结果储存到新建的变量中。

参数:

Key: dstkey, the key to store the diff into.

Keys: key1, key2… keyN. key1..keyN are intersected as in sInter.

返回值:成功返回,交集的个数,失败false

范例:

connect('127.0.0.1', 6379); 
$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->sinterstore('new',"test","test1"));  //结果:int(1) 
var_dump($redis->smembers('new'));  //结果:array(1) { [0]=> string(3) "111" } 
?>
Nach dem Login kopieren

26,sunion

描述:

返回一个所有指定键的并集

参数:

Keys: key1, key2, … , keyN

返回值:成功返回合并后的集,失败false

范例:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->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 ) 
?>
Nach dem Login kopieren

27,sunionstore

描述:执行sunion命令并把结果储存到新建的变量中。

参数:

Key: dstkey, the key to store the diff into.

Keys: key1, key2… keyN. key1..keyN are intersected as in sInter.

返回值:成功返回,交集的个数,失败false

范例:

connect('127.0.0.1', 6379); 
$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->sinterstore('new',"test","test1"));  //结果:int(4) 
print_r($redis->smembers('new'));  //结果:Array ( [0] => 111 [1] => 222 [2] => 333 [3] => 444 ) 
?>
Nach dem Login kopieren

28,sdiff

描述:返回第一个集合中存在并在其他所有集合中不存在的结果

参数:Keys: key1, key2, … , keyN: Any number of keys corresponding to sets in redis.

返回值:成功返回数组,失败false

范例:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->sadd("test","111"); 
$redis->sadd("test","222"); 
$redis->sadd("test","333"); 
$redis->sadd("test1","111"); 
$redis->sadd("test1","444"); 
print_r($redis->sdiff("test","test1"));  //结果:Array ( [0] => 222 [1] => 333 ) 
?>
Nach dem Login kopieren

29,sdiffstore

描述:执行sdiff命令并把结果储存到新建的变量中。

参数:

Key: dstkey, the key to store the diff into.

Keys: key1, key2, … , keyN: Any number of keys corresponding to sets in redis

返回值:成功返回数字,失败false

范例:

connect('127.0.0.1', 6379); 
$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->sdiffstore('new',"test","test1"));  //结果:int(2) 
print_r($redis->smembers('new'));  //结果:Array ( [0] => 222 [1] => 333 ) 
?>
Nach dem Login kopieren

30,smembers, sgetmembers

描述:

返回集合的内容

参数:Key: key

返回值:An array of elements, the contents of the set.

范例:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->sadd("test","111"); 
$redis->sadd("test","222"); 
print_r($redis->smembers('test'));  //结果:Array ( [0] => 111 [1] => 222 ) 
?>
Nach dem Login kopieren

 php-redis当中,有很多不同名字,但是功能一样的函数,例如:lrem和lremove,这里就不例举了。

更多PHP相关知识,请访问PHP中文网

Das obige ist der detaillierte Inhalt von30 Codebeispiele für gängige PHP-Operationen und Redis-Methoden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:juejin.im
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage