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

例如:

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讲师

모든 응답(3)
大家讲道理

해시 구조에는 순서가 없으므로 첫 번째 항목에 대해 아무것도 모릅니다. 첫 번째 항목을 어떻게 삭제했습니까? 첫 번째 항목은 삽입한 순서의 첫 번째 항목일 뿐입니다. 죄송합니다. 해시는 삽입 순서에 따라 정렬되지 않으므로 해시를 순회하더라도 원하는 결과를 얻지 못할 수 있습니다.
순회 순서가 삽입 순서와 일치하도록 하려면 목록을 사용할 수 있습니다.
두 가지 구조를 통해 귀하의 요구를 실현할 수 있습니다. 하나의 목록은 수집 순서를 유지하는 데 사용되고 다른 하나는 k-v 데이터를 저장하는 데 사용됩니다. 삭제 시 목록에서 데이터를 팝업한 다음 그에 따라 삭제합니다. 해시의 키입니다.

PHPzhong

글쎄, hKeys를 사용하여 모든 키 값을 검색한 다음 애플리케이션 계층에서 첫 번째 키를 검색한 다음 hget과 hdel을 동시에 검색할 수 있습니다.

大家讲道理

해시 연결 목록, //단일 항목 삭제
$redis->hDel('hashkey', 'key1');

//전체 해시 삭제
$redis->del('hashkey');

redis 키를 삭제하려면 del 메소드를 사용하세요. 문자열, 해시, 목록 등 RPOP도 동일하게 꺼낼 수 있습니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!