欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【redis】 setbit和getbit的作用

程序员文章站 2022-07-05 20:40:09
...

对 key 所储存的字符串值,设置或清除指定偏移量上的位(bit)。位的设置或清除取决于 value 参数,可以是 0 也可以是 1 。

可以把此时的字符串,理解成一个二进制字节串,setbit修改对应bit数的值,0或者1

下例可以看到

10.20.7.58:6379> setbit var 0 1
(integer) 0
10.20.7.58:6379> get var
"\x80"             
10.20.7.58:6379> setbit var 7 1
(integer) 0
10.20.7.58:6379> get var
"\x81"
10.20.7.58:6379> setbit var 8 1
(integer) 0
10.20.7.58:6379> get var
"\x81\x80"

 setbit var 0 1,第0位置为1之后,var的值为"\x80"对应的二进制数据为"1000 0000", 

 setbit var 7 1,将第7为置为1hi周,var的值为"\x81"对应的二进制数据为"1000 0001", 

setbit var 8 1,将第7为置为1hi周,var的值为"\x81\x80"对应的二进制数据为"1000 0001 1000 0000", 

适用于类似linux文件系统 drwxrwxrwx的权限系统,对应的位置的bit为的值为1, 即有对应的权限。 

相关标签: redis redis