>  기사  >  类库下载  >  컬렉션 유형 설정

컬렉션 유형 설정

高洛峰
高洛峰원래의
2016-10-20 14:31:465357검색

3. 집합 컬렉션 유형

소개

집합 컬렉션과 목록은 매우 유사하며 여러 문자열을 저장할 수 있습니다. 그러나 목록은 중복된 값을 저장할 수 있지만 집합을 반복할 수는 없습니다.

설정 구조

여기서 user는 키 이름이며, 각각 다른 여러 개의 비반복 요소를 포함할 수 있습니다.

[
    "user":[
        "yanying1",
        "yanying2",
        "yanying3"
    ]
]

작업 방법

컬렉션 유형 설정

데모(명령줄 + PHP 데모)

명령줄:

컬렉션에 요소를 추가하고, 삽입에 성공하려면 1을 반환합니다. 이미 존재함

sadd set-key item // 返回 1

마찬가지로 컬렉션에 요소를 추가합니다

sadd set-key item2 // 返回1,表示插入成功,集合内没有该元,
sadd set-key item3 // 返回
1sadd set-key item // 返回0,表示插入失败,集合内已经存在

추가한 후 컬렉션의 모든 요소를 ​​가져오고 모든 요소를 ​​성공적으로 반환합니다

smembers set-key // 得到结果:'item','item2','item3',由于元素不能重复,所以最后一个item不存在集合中

이 컬렉션의 중요한 기능은 아래에 소개되어 있습니다. sismember 명령을 사용하여 해당 요소가 컬렉션에 있는지 확인하면 1을 반환하고, 존재하지 않으면 0을 반환합니다.

sismember set-key item4 // 由于item4不在集合中,所以返回 0
sismember set-key item // item元素是存在于集合中的,返回1;同理item2,item3也是会返回1

다음으로 요소 삭제를 시도합니다. 삭제가 성공하면 삭제된 요소의 개수가 반환됩니다.

srem set-key item //删除成功,返回删除个数:1
srem set-key item // item之前已经被删除,所以删除失败,返回个数0。这里不是表示true or false

모든 요소를 ​​다시 확인해보니 item2와 item3만 남아 있는 것으로 나타났습니다

smembers set-key // 返回'item2','item3'

PHP 버전 데모

1단계, Redis 데이터베이스 연결

$redis = new Redis();
$redis->connect('127.0.0.1', 6379);

먼저 요소 항목을 키 설정 컬렉션에 삽입합니다. 1은 성공적인 삽입을 나타내고, 0 요소는 이미 존재함을 나타냅니다

$redis->sadd('set-key','item'); // 添加成功,返回1

다음으로 항목을 키 설정 컬렉션에 다시 추가하고 해당 항목이 이미 존재함을 확인하고 0

$redis->sadd('set-key','item'); // 集合中已经存在item,添加失败,返回0

이 반환됩니다. 다음 데모에서는 여러 요소

$redis->sadd('set-key','item2');
$redis->sadd('set-key','item3');

를 추가합니다. 이제 컬렉션에 3개의 요소를 사용하여

$r = $redis->smembers('set-key');
var_dump($r);
인쇄 후 item2, item3을 포함하는 배열을 얻습니다.

array (size=3)
  0 => string 'item' (length=4)
  1 => string 'item2' (length=5)
  2 => string 'item3' (length=5)
아래에서는 sismember 명령을 사용하여 컬렉션에 요소가 있는지 확인합니다. 이는 별명이 이미 있는지 확인할 때 매우 유용합니다.

$redis->sismember('set-key','item'); //该元素存在集合中,则为 boolean true,反之boolean false
마지막으로 요소를 삭제합니다. 처음 삭제된 항목이고 해당 요소가 컬렉션에 존재하는 경우 삭제된 항목 개수가 1개 반환됩니다.

$redis->srem('set-key','item'); // int 1
이때 삭제 명령을 실행합니다. 요소가 더 이상 컬렉션에 존재하지 않으므로 Return 0이 삭제되었습니다.

$redis->srem('set-key','item'); // int 0


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

관련 기사

더보기