如何删除redis的hash结构中第一个域?
PHP中文网
PHP中文网 2017-04-24 09:12:30
0
3
787

例如:

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中文网
PHP中文网

认证高级PHP讲师

répondre à tous(3)
大家讲道理

La structure de hachage n'a pas d'ordre, vous ne savez donc rien du premier élément. Comment avez-vous supprimé le premier élément, selon vous, n'est que le premier élément dans l'ordre que vous avez inséré, mais je le suis ? désolé pour le hachage. Il n'est pas trié en fonction de votre ordre d'insertion, donc même si vous parcourez le hachage, vous ne pourrez peut-être pas obtenir le résultat souhaité.
Si vous souhaitez que l'ordre de parcours soit cohérent avec l'ordre d'insertion, vous pouvez utiliser la liste.
Vos besoins peuvent être satisfaits à travers deux structures. Une liste est utilisée pour maintenir l'ordre de collecte et l'autre hachage est utilisé pour enregistrer les données k-v. Lors de la suppression, extrayez une donnée de la liste, puis supprimez-la en fonction. la clé dans le hachage Can.

PHPzhong

Eh bien, nous ne pouvons utiliser hKeys que pour récupérer toutes les valeurs de clé, puis récupérer la première clé au niveau de la couche application, puis hget et hdel en même temps

大家讲道理

Liste chaînée de hachage, //Supprimer une seule entité
$redis->hDel('hashkey', 'key1');

//Supprimer tout le hachage
$redis->del('hashkey');

Pour supprimer une clé redis, utilisez la méthode del. Qu'il s'agisse d'une chaîne, d'un hachage, d'une liste, d'un ensemble, etc., c'est la même chose.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal