84669 Lernen von Personen
152542 Lernen von Personen
20005 Lernen von Personen
5487 Lernen von Personen
7821 Lernen von Personen
359900 Lernen von Personen
3350 Lernen von Personen
180660 Lernen von Personen
48569 Lernen von Personen
18603 Lernen von Personen
40936 Lernen von Personen
1549 Lernen von Personen
1183 Lernen von Personen
32909 Lernen von Personen
例如:
user:1 name "zhangsan" user:1 num "001" user:2 name "lisi" user:2 num "002" user:3 name "wang" user:3 num "003"
在不指定user:1的情况下删除第一条域user:1。其实需求类似list中的lpop,但是还是现在需要hash这种数据结构来记录id。
认证高级PHP讲师
hash结构是没有顺序的,所以第一条是什么都不知道,何来的删除第一条,你所认为的第一条只是你插入的顺序中的第一条,但是很抱歉hash并不按你的插入顺序进行排序,所以你就算遍历hash也未必能够得到你想要的结果。如果希望遍历顺序保持与插入顺序一致,可使用list。你的需求可以通过两个结构来实现,一个list用于维护集合顺序,另一个hash用于保存k-v数据,删除时从list中pop出一个数据,然后到hash中根据key进行删除即可。
额,那只能hKeys去取出所有key值,然后在应用层去取出第一个key,然后hget同时hdel
哈希链表、//删除单个实体$redis->hDel('hashkey', 'key1');
//删除整个hash$redis->del('hashkey');
删除一个redis的key都是用del方法, 不管是string,hash,list,set等类型, 都一样,RPOP也可以取出来。
hash结构是没有顺序的,所以第一条是什么都不知道,何来的删除第一条,你所认为的第一条只是你插入的顺序中的第一条,但是很抱歉hash并不按你的插入顺序进行排序,所以你就算遍历hash也未必能够得到你想要的结果。
如果希望遍历顺序保持与插入顺序一致,可使用list。
你的需求可以通过两个结构来实现,一个list用于维护集合顺序,另一个hash用于保存k-v数据,删除时从list中pop出一个数据,然后到hash中根据key进行删除即可。
额,那只能hKeys去取出所有key值,然后在应用层去取出第一个key,然后hget同时hdel
哈希链表、//删除单个实体
$redis->hDel('hashkey', 'key1');
//删除整个hash
$redis->del('hashkey');
删除一个redis的key都是用del方法, 不管是string,hash,list,set等类型, 都一样,RPOP也可以取出来。