Hash
/** * * Hash操作 * 哈希操作 * 可理解为数据库操作 * */ //为user表中的字段赋值。成功返回1,失败返回0。若user表不存在会先创建表再赋值,若字段已存在会覆盖旧值。 $redis->hSet('user', 'name', '222'); //获取user表中指定字段的值。若user表不存在则返回false。 $redis->hGet('user', 'realname'); //查看user表的某个字段是否存在,存在返回true,否则返回false。 $redis->hExists('user', 'realname'); //删除user表的一个字段,不支持删除多个字段。成功返回1,否则返回0。 $redis->hDel('user', '222'); //同时设置某个user表的多个字段值。成功返回true。 $redis->hMset('user', ['name' => 'jet', 'age' => 18]); //同时获取某个user表的多个字段值。其中不存在的字段值为false。 $redis->hMget('user', ['name', 'age']); //获取某个user表所有的字段和值。 $redis->hGetAll('user'); //获取某个user表所有字段名。user表不存在时返回空数组,key不为user表时返回false。 $redis->hKeys('user'); //获取某个user表所有字段值。 $redis->hVals('user'); //为user表中不存在的字段赋值。若user表不存在则先创建,若字段已存在则不做任何操作。设置成功返回true,否则返回false。 $redis->hSetNx('user', 'realname', 'jetwu'); //获取某个user表的字段数量。若user表不存在返回0,若user不是hash表则返回false。 $redis->hLen('user'); //为user表中的指定字段加上指定的数值,若user表不存在则先创建,若字段不存在则先初始化值为0再进行操作,若字段值为字符串则返回false。设置成功返回字段新值。 $redis->hIncrBy('user', 'age', 10); //为user表中的指定字段加上指定浮点数值。 $redis->hIncrBy('user', 'age', 1.5);
Set
/** * * Set操作 * 集合命令 * 保证数据的唯一 * 不保证顺序 * */ //将一个元素加入集合,已经存在集合中的元素则忽略。若集合不存在则先创建,若key不是集合类型则返回false,若元素已存在返回0,插入成功返回1。 $redis->sAdd('set3', '11'); //返回集合中所有成员。 $redis->sMembers('set3'); //判断集合里是否存在指定元素,是返回true,否则返回false。 $redis->sismember('set', 'hello'); //返回集合中元素的数量。 $redis->scard('set'); //随机删除并返回集合里的一个元素。 $redis->sPop('set'); //随机返回(n)个集合内的元素,由第二个参数决定返回多少个 //如果 n 大于集合内元素的个数则返回整个集合 //如果 n 是负数时随机返回 n 的绝对值,数组内的元素会重复出现 $redis->sRandMember('set', -20); //删除集合中指定的一个元素,元素不存在返回0。删除成功返回1,否则返回0。 $redis->srem('set', 'hello'); //模糊搜索相对的元素, //参数:key,迭代器变量,匹配值,每次返回元素数量(默认为10个) $redis->sscan('set', $it, 's*', 5); //将指定一个源集合里的值移动到一个目的集合。成功返回true,失败或者源集合值不存在时返回false。 //参数:源集合,目标集合,移动的元素 $redis->sMove('set', 'set2', 'sdf4'); //以第一个集合为标准,后面的集合对比,返回差集 $redis->sDiff('set', 'set2','set3'); //参数:第一个参数为目标集合,存储缺少的值(三个集合相加,同样字段覆盖,组合成一个新的集合)返回第一个参数所增加的值的个数。 $redis->sDiffStore('set', 'set3', 'set2'); //返回所有集合的相同值,必须所有集合都有,不存在的集合视为空集。 $redis->sInter('set', 'set3', 'set2'); //参数:第一个参数为目标集合,存储后面集合的交集 //若目的集合已存在则覆盖它。返回交集元素个数,否则返回储存的交集 $redis->sInterStore('set4', 'set', 'set3'); //把所有集合合并在一起并返回 $redis->sUnion('set', 'set2', 'set3'); //以第一个集合为目标,把后面的集合合并在一起,存储到第一个集合里面,如果已经存在则覆盖掉,并返回并集的个数 $redis->sUnionStore('set4', 'set', 'set2', 'set3');