hash类型是一个string类型的field和value的映射表,每个 hash 可以存储 232 - 1 键值对(40多亿),hash类型主要有以下应用场景。
- 购物车
以用户id为key,商品id为field,商品数量为value,恰好构成了购物车的3个要素- 存储对象
hash类型的(key, field, value)的结构与对象的(对象id, 属性, 值)的结构相似,也可以用来存储对象。
对Hash数据的操作
#创建
#单个设置hash内容,字段已存在会覆盖
$redis->hset('hash','a','value');
#只有当字段不存在时候才设置hash表中字段值
$redis->hsetnx('hash','a','value');
#批量设置hash内容
$redis->hmset('hash',['a'=>12,'b'=>2,'c'=>3]);
#获取
#获取hash指定字段的值
$redis->hget('hash','a');
#批量获取
$redis->hmget('hash',['a','b','c']);
#获取全部
$redis->hgetall('hash');
#获取hash表中所有字段的值
$redis->hvals('hash');
#获取hash表中所有的字段
$redis->hkeys('hash');
#删除
$redis->hdel('hash','a');
#判断hash指定字段的值是否存在
$redis->hexists('hash','a');
#获取hash表中字段个数
$redis->hlen('hash');
这篇博客探讨了PHP如何操作Redis中的Hash数据类型,包括Hash在购物车和存储对象场景的应用。通过使用Hash,可以高效地存储大量键值对,并以用户ID和商品ID为例说明了其在实现购物车功能时的用法,同时也提到了利用Hash来存储对象的便捷性。
195

被折叠的 条评论
为什么被折叠?



