Maison > Article > développement back-end > 30 exemples de code de méthodes couramment utilisées pour faire fonctionner Redis en PHP
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. J'avais l'habitude de voir un blog relativement complet, mais je ne le trouve pas maintenant. Après une longue recherche, je vais résumer quelques exemples de traitement PHP redis. Je pense personnellement que certains exemples sont couramment utilisés. Les exemples suivants sont tous basés sur l'extension php-redis.1, connect
Description : L'instance est connectée à un Redis.Paramètres : hôte : string, port : int
Valeur de retour : BOOL Retour réussi : TRUE ; L'échec renvoie : FALSE
Copier le code Le code est le suivant :
<?php $redis = new redis(); $result = $redis->connect('127.0.0.1', 6379); var_dump($result); //结果:bool(true) ?>
2, set
Description : Définir la valeur de la clé et de la valeurParamètre : Valeur de la clé
Valeur de retour : BOOL Retour réussi : TRUE ; Retour d'échec : FALSE
Exemple :
Copier le code Le code est le suivant :
<?php $redis = new redis(); $redis->connect('127.0.0.1', 6379); $result = $redis->set('test',"11111111111"); var_dump($result); //结果:bool(true) ?>
3, obtenez
Description : Récupère la valeur de la clé spécifiéeParamètre : clé
Valeur de retour : chaîne ou BOOL Si la clé n'existe pas, renvoie FALSE. Sinon, renvoie la valeur correspondant à la clé spécifiée.
Exemple :
Copier le code Le code est le suivant :
<?php $redis = new redis(); $redis->connect('127.0.0.1', 6379); $result = $redis->get('test'); var_dump($result); //结果:string(11) "11111111111" ?>
4, supprimer
Description : Supprimer la clé spécifiéeParamètres : une clé, ou un nombre indéterminé de paramètres, un tableau pour chaque clé : clé1 clé2 clé3 ... cléN
Valeur de retour : le nombre d'éléments supprimés
Exemple :
Copier le codeLe code est le suivant :
<?php $redis = new redis(); $redis->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) ?>
5, setnx
Description : Si la clé n'existe pas dans la base de données, définissez le paramètre valeur de clé Paramètre : valeur de clé
Valeur de retour : BOOL Retour réussi : TRUE Retour d'échec : FALSE
Exemple :
Le code est le suivant :
<?php $redis = new redis(); $redis->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 ?>6, existe
Description : Vérifiez si la clé spécifiée existe
Clé de paramètreValeur de retour : Bool Retour réussi : TRUE ; Retour d'échec : FALSE
Exemple :
Le code est le suivant :
<?php $redis = new redis(); $redis->connect('127.0.0.1', 6379); $redis->set('test',"1111111111111"); var_dump($redis->exists('test')); //结果:bool(true) ?>7, incr
Description : Incrément numérique pour stocker la clé de valeur clé.
Paramètres : key value : La valeur qui sera ajoutée à la cléValeur de retour : INT la nouvelle valeur
exemple :
Le code est le suivant :
<?php $redis = new redis(); $redis->connect('127.0.0.1', 6379); $redis->set('test',"123"); var_dump($redis->incr("test")); //结果:int(124) var_dump($redis->incr("test")); //结果:int(125) ?>
Description : Stocke la valeur de la clé par décrémentation numérique.
Paramètres : valeur de la clé : la valeur qui sera ajoutée à la clé Valeur de retour : INT la nouvelle valeur
Exemple :
Le le code est le suivant :
<?php $redis = new redis(); $redis->connect('127.0.0.1', 6379); $redis->set('test',"123"); var_dump($redis->decr("test")); //结果:int(122) var_dump($redis->decr("test")); //结果:int(121) ?>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
Instance :
Le code est le suivant :
<?php $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
Description : Ajoute une valeur de chaîne à partir de l'en-tête 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é, valeurValeur de retour : renvoie la longueur du tableau en cas de succès, false en cas d'échec
Exemple :
Le code est le suivant suit :
<?php $redis = new redis(); $redis->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) ?>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é, valeurValeur de retour : renvoie la longueur du tableau en cas de succès, false en cas d'échec
Exemple :
Le code est tel suit :
<?php $redis = new redis(); $redis->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) ?>12, lpop
Description : Renvoie et supprime le premier élément de la liste
Paramètre : cléValeur de retour : renvoie avec succès la valeur du premier élément, l'échec renvoie false
Exemple :
Le code est le suivant :
<?php $redis = new redis(); $redis->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" ?>13, lsize,llen
Description : La longueur de la 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ètre : CléValeur de retour : Renvoie la longueur du tableau en cas de succès, false en cas d'échec
Exemple :
Le code est le suivant :
<?php $redis = new redis(); $redis->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) ?>14, lget
描述:返回指定键存储在列表中指定的元素。 0第一个元素,1第二个… -1最后一个元素,-2的倒数第二…错误的索引或键不指向列表则返回FALSE。 复制代码 代码如下: 15,lset 描述:为列表指定的索引赋新的值,若不存在该索引返回false. 复制代码 代码如下: 16,lgetrange 描述: 复制代码 代码如下: 17,lremove 描述:从列表中从头部开始移除count个匹配的值。如果count为零,所有匹配的元素都被删除。如果count是负数,内容从尾部开始删除。 复制代码 代码如下: 18,sadd 描述:为一个Key添加一个值。如果这个值已经在这个Key中,则返回FALSE。 复制代码 代码如下: 19,sremove 描述:删除Key中指定的value值 复制代码 代码如下: 20,smove 描述:将Key1中的value移动到Key2中 复制代码 代码如下: 21,scontains 描述:检查集合中是否存在指定的值。 复制代码 代码如下: 22,ssize 描述:返回集合中存储值的数量 复制代码 代码如下: 23,spop 描述:随机移除并返回key中的一个值 复制代码 代码如下: 24,sinter 描述:返回一个所有指定键的交集。如果只指定一个键,那么这个命令生成这个集合的成员。如果不存在某个键,则返回FALSE。 复制代码 代码如下: 25,sinterstore 描述:执行sInter命令并把结果储存到新建的变量中。 复制代码 代码如下: 26,sunion 描述: 复制代码 代码如下: 27,sunionstore 描述:执行sunion命令并把结果储存到新建的变量中。 复制代码 代码如下: 28,sdiff 描述:返回第一个集合中存在并在其他所有集合中不存在的结果 复制代码 代码如下: 29,sdiffstore 描述:执行sdiff命令并把结果储存到新建的变量中。 复制代码 代码如下: 30,smembers, sgetmembers 描述: 复制代码 代码如下:
参数:key index
返回值:成功返回指定元素的值,失败false
范例:<?php
$redis = new redis();
$redis->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"
?>
参数:key index value
返回值:成功返回true,失败false
范例:<?php
$redis = new redis();
$redis->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"
?>
返回在该区域中的指定键列表中开始到结束存储的指定元素,lGetRange(key, start, end)。0第一个元素,1第二个元素… -1最后一个元素,-2的倒数第二…
参数:key start end
返回值:成功返回查找的值,失败false
范例:<?php
$redis = new redis();
$redis->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 )
?>
参数:key count value
返回值:成功返回删除的个数,失败false
范例:<?php
$redis = new redis();
$redis->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 )
?>
参数:key value
返回值:成功返回true,失败false
范例:<?php
$redis = new redis();
$redis->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 )
?>
参数:key member
返回值:true or false
范例:<?php
$redis = new redis();
$redis->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 )
?>
参数:srcKey dstKey member
返回值:true or false
范例<?php
$redis = new redis();
$redis->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 )
?>
参数:key value
返回值:true or false
范例:<?php
$redis = new redis();
$redis->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)
?>
参数:key
返回值:成功返回数组个数,失败0
范例:<?php
$redis = new redis();
$redis->connect('127.0.0.1', 6379);
$redis->delete('test');
$redis->sadd('test','111');
$redis->sadd('test','112');
echo $redis->ssize('test'); //结果:2
?>
参数:key
返回值:成功返回删除的值,失败false
范例:<?php
$redis = new redis();
$redis->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"
?>
参数:key1, key2, keyN
返回值:成功返回数组交集,失败false
范例:<?php
$redis = new redis();
$redis->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" }
?>
参数:
Key: dstkey, the key to store the diff into.
Keys: key1, key2… keyN. key1..keyN are intersected as in sInter.
返回值:成功返回,交集的个数,失败false
范例:<?php
$redis = new redis();
$redis->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" }
?>
返回一个所有指定键的并集
参数:
Keys: key1, key2, … , keyN
返回值:成功返回合并后的集,失败false
范例:<?php
$redis = new redis();
$redis->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 )
?>
参数:
Key: dstkey, the key to store the diff into.
Keys: key1, key2… keyN. key1..keyN are intersected as in sInter.
返回值:成功返回,交集的个数,失败false
范例:<?php
$redis = new redis();
$redis->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 )
?>
参数:Keys: key1, key2, … , keyN: Any number of keys corresponding to sets in redis.
返回值:成功返回数组,失败false
范例:<?php
$redis = new redis();
$redis->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 )
?>
参数:
Key: dstkey, the key to store the diff into.
Keys: key1, key2, … , keyN: Any number of keys corresponding to sets in redis
返回值:成功返回数字,失败false
范例:<?php
$redis = new redis();
$redis->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 )
?>
返回集合的内容
参数:Key: key
返回值:An array of elements, the contents of the set.
范例:<?php
$redis = new redis();
$redis->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 )
?>
php-redis当中,有很多不同名字,但是功能一样的函数,例如:lrem和lremove,这里就不例举了。
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!