redis缓存技巧,普通用正在一些常常查问且没有常常扭转的数据上,能够从数据库查问存到redis缓存中(redis缓存是存正在内存中,能够短暂放弃),用户拜访时间接读取缓存中的数据,这样正在拜访量以及并发很年夜时就没有会呈现数据库查问慢的状况,实际名目中,普通将数据库的数据数组转化为json字符串,应用set办法保留、get办法猎取便可。上面罗列一些redis的应用办法。
$redis = new redis(); $result = $redis->connect('127.0.0.1', 6379); //$redis->auth('pt#1234@re'); //存正在明码时链接 var_dump($result); //后果:bool(true) $redis->set('name',111); $redis->lpush('value',111); $redis->expire('name',10);//设置过时工夫,没有设置过来工夫时,默许为永世放弃 //$redis->expire('value',10);//没有设置时,默许为-1,永世放弃
1,connect
形容:实例衔接到一个Redis.
参数:host: string,port: int
前往值:BOOL 胜利前往:TRUE;失败前往:FALSE
示例:
<?php $redis = new redis(); $result = $redis->connect('127.0.0.1', 6379); var_dump($result); //后果:bool(true) ?>
2,set
形容:设置key以及value的值
参数:Key Value
前往值:BOOL 胜利前往:TRUE;失败前往:FALSE
示例:
<?php $redis = new redis(); $redis->connect('127.0.0.1', 6379); $result = $redis->set('test',"11111111111"); var_dump($result); //后果:bool(true) ?>
3,get
形容:猎取无关指定键的值
参数:key
前往值:string或BOOL 假如键没有存正在,则前往 FALSE。不然,前往指定键对应的value值。
典范榜样:
<?php $redis = new redis(); $redis->connect('127.0.0.1', 6379); $result = $redis->get('test'); var_dump($result); //后果:string(11) "11111111111" ?>
4,delete
形容:删除了指定的键
参数:一个键,或没有确定命目的参数,每个要害的数组:key1 key2 key3 … keyN
前往值:删除了的项数
典范榜样:
<?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
形容:假如正在数据库中没有存正在该键,设置要害值参数
参数:key value
前往值:BOOL 胜利前往:TRUE;失败前往:FALSE
典范榜样:
<?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,exists
形容:验证指定的键能否存正在
参数key
前往值:Bool 胜利前往:TRUE;失败前往:FALSE
典范榜样:
<?php $redis = new redis(); $redis->connect('127.0.0.1', 6379); $redis->set('test',"1111111111111"); var_dump($redis->exists('test')); //后果:bool(true) ?>
7,incr
形容:数字递增存储键值键.
参数:key value:将被增加到键的值
前往值:INT the new value
实例:
<?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) ?>
8,decr
形容:数字递加存储键值。
参数:key value:将被增加到键的值
前往值:INT the new value
实例:
<?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
形容:获得一切指定键的值。假如一个或多个键没有存正在,该数组中该键的值为假
参数:此中蕴含键值的列表数组
前往值:前往蕴含一切键的值的数组
实例:
<?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
形容:由列表头部增加字符串值。假如没有存正在该键则创立该列表。假如该键存正在,并且没有是一个列表,前往FALSE。
参数:key,value
前往值:胜利前往数组长度,失败false
实例:
<?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
形容:由列表尾部增加字符串值。假如没有存正在该键则创立该列表。假如该键存正在,并且没有是一个列表,前往FALSE。
参数:key,value
前往值:胜利前往数组长度,失败false
典范榜样:
<?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
形容:前往以及移除了列表的第一个元素
参数:key
前往值:胜利前往第一个元素的值 ,失败前往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->lpop("test")); //后果:string(3) "222" ?>
13,lsize,llen
形容:前往的列表的长度。假如列表没有存正在或为空,该饬令前往0。假如该键没有是列表,该饬令前往FALSE。
参数:Key
前往值:胜利前往数组长度,失败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->lsize("test")); //后果:int(4) ?>
14,lget
形容:前往指定键存储正在列表中指定的元素。 0第一个元素,1第二个… -1最初一个元素,-2的倒数第二…谬误的索引或键没有指向列表则前往FALSE。
参数: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" ?>
15,lset
形容:为列表指定的索引赋新的值,若没有存正在该索引前往false.
参数: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" ?>
16,lgetrange
形容:
前往正在该区域中的指定键列表中开端到完结存储的指定元素,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 ) ?>
17,lremove
形容:从列表中从头部开端移除了count个婚配的值。假如count为零,一切婚配的元素都被删除了。假如count是正数,内容从尾部开端删除了。
参数: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 ) ?>
18,sadd
形容:为一个Key增加一个值。假如这个值曾经正在这个Key中,则前往FALSE。
参数: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 ) ?>
19,sremove
形容:删除了Key中指定的value值
参数: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 ) ?>
20,smove
形容:将Key1中的value挪动到Key2中
参数: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 ) ?>
21,scontains
形容:反省荟萃中能否存正在指定的值。
参数: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) ?>
22,ssize
形容:前往荟萃中存储值的数目
参数: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 ?>
23,spop
形容:随机移除了并前往key中的一个值
参数: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" ?>
24,sinter
形容:前往一个一切指定键的交加。假如只指定一个键,那末这个饬令天生这个荟萃的成员。假如没有存正在某个键,则前往FALSE。
参数: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" } ?>
25,sinterstore
形容:执行sInter饬令并把后果贮存到新建的变量中。
参数:
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" } ?>
26,sunion
形容:
前往一个一切指定键的并集
参数:
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 ) ?>
27,sunionstore
形容:执行sunion饬令并把后果贮存到新建的变量中。
参数:
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 ) ?>
28,sdiff
形容:前往第一个荟萃中存正在并正在其余一切荟萃中没有存正在的后果
参数: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 ) ?>
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
典范榜样:
<?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 ) ?>
30,smembers, sgetmembers
形容:
前往荟萃的内容
参数: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 ) ?>
更多Redis相干常识,请拜访Redis应用教程栏目!
以上就是redis缓存若何应用的具体内容,更多请存眷资源魔其它相干文章!
标签: python教程 python编程 python使用问题 redis缓存如何使用
抱歉,评论功能暂时关闭!