您现在的位置是:首页 > PHP框架交流PHP框架交流
yii框架中yiisoft/yii2-redis redis操作
上善若水2021-07-04 23:03:45【PHP框架交流】 2546人已围观
简介yii框架中yiisoft/yii2-redis redis操作字符串学习笔记,设置值获取值设置过期时间,自增自键运算等.参考网址https://redis.io/commands/decrby -
yii框架中yiisoft/yii2-redis redis操作字符串学习笔记,设置值获取值设置过期时间,自增自键运算等.
参考网址https://redis.io/commands/decrby
- 1. 设置值set
$redis = \Yii::$app->redis;
$redis->set('name','value1','ex','100');
$redis->set('name','value1');
echo $redis->get('name');
2. append
如果key已经存在并且是一个字符串,则此命令将 附加value到字符串的末尾。如果key不存在,则创建并设置为空字符串,因此在这种特殊情况下APPEND 将类似于SET。
返回值
追加操作后的字符串长度
$redis = \Yii::$app->redis;
$redis->append('name','append');
3.decr
将存储的数字减key一。如果key不存在,则0在执行操作前设置为。如果键包含错误类型的值或包含不能表示为整数的字符串,则返回错误。此操作仅限于64 位有符号整数。
返回值
key递减后的值
$redis = \Yii::$app->redis;
$redis->set('test:decr_test',1);
$redis->decr('test:decr_testt');
4.decrby
递减存储在数key通过decrement。如果key不存在,则0在执行操作前设置为。如果键包含错误类型的值或包含不能表示为整数的字符串,则返回错误。此操作仅限于 64 位有符号整数。
返回值
key相减后的值
$redis = \Yii::$app->redis;
$redis->decrby('test_decr',100);
5.GET
获取 的值key。如果键不存在,nil则返回特殊值。如果存储的值key不是字符串,则会返回错误,因为GET 仅处理字符串值。
获取key的值没有就返回null
$redis = \Yii::$app->redis;
$return=$redis->get('aaaa');
var_dump($return);
6.getrange
返回范围字符 闭区间
$redis = \Yii::$app->redis;
$return=$redis->getrange('name',0,1);
var_dump($return);
7.incr
自增 若key不存在 这设置为零 并自增后返回1
$redis = \Yii::$app->redis;
$return=$redis->incr('test_incr');
var_dump($return);
7.incr
自增 若key不存在 这设置为零 并自增后返回1
$redis = \Yii::$app->redis;
$return=$redis->incr('test_incr');
var_dump($return);
8.incrby
增加制定值
$redis = \Yii::$app->redis;
$return=$redis->incrby('test_incr',100);
var_dump($return);
9.incrbyfloat
自增小数 返回字符串类型小数
$redis = \Yii::$app->redis;
$return=$redis->incrbyfloat('test_incr',0.001);
var_dump($return);
9.mget
获取多个key的值 返回数组 不存在返回数组
$redis = \Yii::$app->redis;
$return=$redis->mget('name','username','aaa','bbb');
var_dump($return);
打印
array (size=4)
0 => string 'value1append' (length=12)
1 => string 'marko23333
' (length=12)
2 => null
3 => null
10.mset
批量设置多个值 键1 值1 键2 值2 返回true or false
$redis = \Yii::$app->redis;
$return=$redis->mset('mkey1','mv1','mkey2','mv2');
var_dump($return);
11.msetnx
将给定的键设置为其各自的值。 即使只有一个键已经存在,MSETNX也不会执行任何操作。
由于此语义,MSETNX可用于以确保设置所有字段或根本不设置字段的方式设置代表唯一逻辑对象的不同字段的不同键。
MSETNX是原子的,所以所有给定的键都是一次设置的。客户端不可能看到某些密钥已更新而其他密钥未更改。
即,有一个键存在整个插入就不会插入 ,必须多有键都不存在才会全部插入
$redis = \Yii::$app->redis;
$return=$redis->msetnx('mkey1','mv1','mkey3','mv3');//mkey1 存在mkey1,mkey3插入都不执行
var_dump($return);
$return=$redis->msetnx('mkey4','mv4','mkey5','mv5');
var_dump($return);
12.mset
批量设置多个值 键1 值1 键2 值2 返回true or false
$redis = \Yii::$app->redis;
$return=$redis->mset('mkey1','mv1','mkey2','mv2');
var_dump($return);
13.PSETEX 毫秒 setex 秒
设置值和过期时间分别为毫秒和秒
$redis = \Yii::$app->redis;
$return=$redis->psetex('key','10000','value');
var_dump($return);
$return=$redis->setex('key','10','value');
var_dump($return);
14.PSETEX 毫秒 setex 秒
设置值和过期时间分别为毫秒和秒
$redis = \Yii::$app->redis;
$return=$redis->psetex('key','10000','value');
var_dump($return);
$return=$redis->setex('key','10','value');
var_dump($return);
14.setnx
设置值若key已经存在则不执行
$redis = \Yii::$app->redis;
$return=$redis->setnx('key','10');
var_dump($return);
15.setrange
覆盖值范围值
$redis = \Yii::$app->redis;
$redis->set('key','0123456789');
$return=$redis->setrange('key','2','xxx');//value =>01xxx56789
var_dump($return);;
16.strlen
返回key值的长度
$redis = \Yii::$app->redis;
$return=$redis->strlen('key');
var_dump($return);
很赞哦! (1)
相关文章
随机图文
-
ThinkPHP6.0主要新特性
ThinkPHP6.0主要新特性 -
冠状病毒科普 什么是冠状病毒
冠状病毒在分类层级上是科,冠状病毒科拉丁文名Coronaviridae, 简称CoV,因为外形呈球状,具有花瓣状的刺突,因此根据其形状,国际病毒命名委员会在1975年正式命名为“冠状病毒科”。目前已知 -
PHP8.0新特性(1)命名参数 参数的顺序无关
熟悉PHP8.0的新特性,命名参数参数的顺序无关,再传入参数中可以加入参数名称b:20,a:10,作用相当于$a=10,$b=10传参,尽管我们先传入b,但是b:20会正确赋值给$b //1 -
有趣的笑话,3秒逗乐不开心的你
1、睡不着,在数羊的时候,突然有一只小羊站了出来对我说“请你用心一点,你已经数过我一次了。 2、我叫晴晴 因为今天没有太阳所以我叫青青 3、如果长得太美就是犯罪的话,那我的颜值可能会让我无期徒刑。 4、晚睡等于慢性自杀,早起就是当场去世 5、心理学上有潜意识激励的说法。例如你每天早上出门前对着镜子说一句“你很棒”。一段时间后,那块镜子就会成为一块很棒的镜子。 6、“一块玻璃准备跳楼你猜他