30 exemples de code de méthode courante Redis d'opération php

藏色散人
Libérer: 2023-04-07 15:24:01
avant
2726 Les gens l'ont consulté

Cet article présente principalement 30 exemples de code de méthodes courantes pour faire fonctionner Redis en PHP. Cet article contient en fait plus de 30 méthodes, qui peuvent exploiter le type de chaîne, le type de liste et définir les données de type. Les amis dans le besoin peuvent s'y référer

Il existe de nombreuses opérations redis. Voici quelques exemples de redis de traitement PHP. Je pense personnellement que certains exemples sont couramment utilisés. Les exemples suivants sont tous basés sur l'extension php-redis.

1, connecter

Description : L'instance est connectée à un Redis.

Paramètres : hôte : string, port : int

Valeur de retour : BOOL Retour réussi : TRUE ; Retour d'échec : FALSE

Exemple :

connect('127.0.0.1', 6379); 
var_dump($result); //结果:bool(true) 
?>
Copier après la connexion

2, set

Description : Définir la clé et value Value

Paramètre : Key Value

Valeur de retour : BOOL Retour réussi : TRUE ; Retour d'échec : FALSE

Exemple :

connect('127.0.0.1', 6379); 
$result = $redis->set('test',"11111111111"); 
var_dump($result);    //结果:bool(true) 
?>
Copier après la connexion

3 , get

Description : Récupère la valeur concernant la clé spécifiée

Paramètres : key

Valeur de retour : string ou BOOL Si la clé n'existe pas, renvoie FALSE . Sinon, renvoie la valeur correspondant à la clé spécifiée.

Exemple :

connect('127.0.0.1', 6379); 
$result = $redis->get('test'); 
var_dump($result);   //结果:string(11) "11111111111" 
?>
Copier après la connexion

4, supprimer

Description : Supprimer la clé spécifiée

Paramètres : une clé, ou un numéro non défini de paramètres, tableau pour chaque clé : key1 key2 key3 ... keyN

Valeur de retour : Nombre d'éléments supprimés

Exemple :

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) 
?>
Copier après la connexion

5, setnx

Description : Si la clé n'existe pas dans la base de données, définissez le paramètre valeur de la clé

Paramètre : valeur de la clé

Valeur de retour : BOOL Retour en cas de succès : TRUE ; retour en cas d'échec :FALSE

Exemple :

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 
?>
Copier après la connexion

6, existe

Description : Vérifiez si la clé spécifiée existe

Clé de paramètre

Valeur de retour : Bool Retour réussi : TRUE ; Retour d'échec : FALSE

Exemple :

connect('127.0.0.1', 6379); 
$redis->set('test',"1111111111111"); 
var_dump($redis->exists('test'));  //结果:bool(true) 
?>
Copier après la connexion

7, incr

Description : clé de valeur de clé stockée à incrémentation numérique.

Paramètres : valeur de clé : la valeur qui sera ajoutée à la clé

Valeur de retour : INT la nouvelle valeur

Instance :

connect('127.0.0.1', 6379); 
$redis->set('test',"123"); 
var_dump($redis->incr("test"));  //结果:int(124) 
var_dump($redis->incr("test"));  //结果:int(125) 
?>
Copier après la connexion

8, decr

Description : Stocke la valeur clé en décrément numérique.

Paramètres : key value : La valeur qui sera ajoutée à la clé

Valeur de retour : INT la nouvelle valeur

Instance :

connect('127.0.0.1', 6379); 
$redis->set('test',"123"); 
var_dump($redis->decr("test"));  //结果:int(122) 
var_dump($redis->decr("test"));  //结果:int(121) 
?>
Copier après la connexion

9 , getMultiple

Description : Obtenez les valeurs de toutes les clés spécifiées. Si une ou plusieurs clés n'existent pas, la valeur de cette clé dans le tableau est fausse

Paramètres : Tableau de listes contenant les valeurs des clés

Valeur de retour : Renvoie un tableau contenant les valeurs de toutes les clés

Exemple :

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 ) 
?>
Copier après la connexion

10, lpush

Description : Ajouter une valeur de chaîne à partir du tête de liste. Créez la liste si la clé n'existe pas. Si la clé existe et n'est pas une liste, renvoyez FALSE.

Paramètres : clé, valeur

Valeur de retour : renvoie la longueur du tableau en cas de succès, false en cas d'échec

Instance :

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) 
?>
Copier après la connexion

11, rpush

Description : Ajoutez une valeur de chaîne à partir de la fin de la liste. Créez la liste si la clé n'existe pas. Si la clé existe et n'est pas une liste, renvoyez FALSE.

Paramètres : clé, valeur

Valeur de retour : renvoie la longueur du tableau en cas de succès, false en cas d'échec

Exemple :

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) 
?>
Copier après la connexion

12, lpop

Description : Renvoie et supprime le premier élément de la liste

Paramètres : clé

Valeur de retour : Renvoie le premier élément avec succès Valeur, renvoie false en cas d'échec

Exemple :

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" 
?>
Copier après la connexion

13, lsize,llen

Description : La longueur du liste renvoyée. Si la liste n'existe pas ou est vide, la commande renvoie 0. Si la clé n'est pas une liste, cette commande renvoie FALSE.

Paramètres : Clé

Valeur de retour : Renvoie la longueur du tableau en cas de succès, false en cas d'échec

Exemple :

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) 
?>
Copier après la connexion

14 , lget

Description : Renvoie l'élément spécifié stocké dans la liste avec la clé spécifiée. 0 pour le premier élément, 1 pour le deuxième... -1 pour le dernier élément, -2 pour l'avant-dernier élément... Renvoie FALSE si le mauvais index ou la mauvaise clé ne pointe pas vers la liste.

Paramètres : index de clé

Valeur de retour : Renvoie la valeur de l'élément spécifié avec succès, false en cas d'échec

Exemple :

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" 
?>
Copier après la connexion

15, lset

Description : Attribue une nouvelle valeur à l'index spécifié dans la liste Si l'index n'existe pas, renvoie false.

Paramètres : clé. valeur d'index

Valeur de retour : vrai en cas de succès, faux en cas d'échec

Exemple :

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" 
?>
Copier après la connexion

16, lgetrange

Description :

Renvoie l'élément spécifié stocké du début à la fin dans la liste de clés spécifiée dans la plage, lGetRange(key, start, end). 0 premier élément, 1 deuxième élément... -1 dernier élément, -2 avant-dernier...

Paramètre : clé début fin

Valeur de retour : renvoie avec succès la valeur trouvée, échec false

Exemple :

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 ) 
?>
Copier après la connexion

17, lremove

Description : Supprimer de la tête de la liste le nombre de valeurs correspondantes. Si le nombre est nul, tous les éléments correspondants sont supprimés. Si le nombre est négatif, le contenu est supprimé depuis la fin.

Paramètres : valeur du nombre de clés

Valeur de retour : renvoie le nombre d'éléments supprimés avec succès, faux en cas d'échec

Exemple :

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 ) 
?>
Copier après la connexion

18, sadd

Description : Ajouter une valeur à une clé. Si cette valeur est déjà dans cette clé, renvoyez FALSE.

Paramètres : valeur clé

Valeur de retour : vrai en cas de succès, faux en cas d'échec

Exemple :

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 ) 
?>
Copier après la connexion

19 , supprimer

描述:删除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 ) 
?>
Copier après la connexion

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 ) 
?>
Copier après la connexion

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) 
?>
Copier après la connexion

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 
?>
Copier après la connexion

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" 
?>
Copier après la connexion

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" } 
?>
Copier après la connexion

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" } 
?>
Copier après la connexion

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 ) 
?>
Copier après la connexion

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 ) 
?>
Copier après la connexion

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 ) 
?>
Copier après la connexion

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 ) 
?>
Copier après la connexion

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 ) 
?>
Copier après la connexion

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

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

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:juejin.im
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!