> 백엔드 개발 > PHP 튜토리얼 > 30개의 PHP 작업 Redis 공통 메소드 코드 예제

30개의 PHP 작업 Redis 공통 메소드 코드 예제

藏色散人
풀어 주다: 2023-04-07 15:24:01
앞으로
2748명이 탐색했습니다.

이 글에서는 주로 PHP에서 Redis를 운영하는 일반적인 메소드 30개를 소개합니다. 실제로 이 글에는 문자열 유형, 목록 유형 및 세트 유형 데이터를 조작할 수 있는 메소드가 30개 이상 있습니다. 도움이 필요한 친구들이 참고할 수 있습니다. Redis 작업이 많이 있는데, 개인적으로 일반적으로 사용되는 예가 몇 가지 있다고 생각하여 PHP 처리 Redis의 예를 정리하겠습니다. 다음 예제는 모두 php-redis 확장을 기반으로 합니다.

1, connect

설명: 인스턴스가 Redis에 연결되었습니다.

매개변수: 호스트: 문자열, 포트: int

반환 값: BOOL 성공적인 반환: TRUE; 실패 반환: FALSE

예:

connect('127.0.0.1', 6379); 
var_dump($result); //结果:bool(true) 
?>
로그인 후 복사

2, set

설명: 키와 value

의 값을 설정합니다. 매개변수: Key Value

반환 값: BOOL 성공적인 반환: TRUE; 실패 반환: FALSE

예:

connect('127.0.0.1', 6379); 
$result = $redis->set('test',"11111111111"); 
var_dump($result);    //结果:bool(true) 
?>
로그인 후 복사

3, get

설명: 지정된 키에 대한 값을 가져옵니다.

매개 변수: key

반환 값: 문자열 또는 BOOL 키가 없으면 FALSE를 반환합니다. 그렇지 않으면 지정된 키에 해당하는 값을 반환합니다.

예:

connect('127.0.0.1', 6379); 
$result = $redis->get('test'); 
var_dump($result);   //结果:string(11) "11111111111" 
?>
로그인 후 복사

4, delete

설명: 지정된 키 삭제

매개변수: 키 또는 결정되지 않은 수의 매개변수, 각 키에 대한 배열: key1 key2 key3... keyN

Return 값: 삭제된 항목 수

예:

connect('127.0.0.1', 6379); 
$redis->set('test',"1111111111111"); 
echo $redis->get('test');   //结果:1111111111111 
$redis->delete('test'); 
var_dump($redis->get('test'));  //结果:bool(false) 
?>
로그인 후 복사

5, setnx

설명: 키가 데이터베이스에 없으면 키 값 매개변수를 설정합니다.

매개변수: 키 값

반환 값: BOOL 성공 반환: TRUE; 실패 반환: FALSE

예:

connect('127.0.0.1', 6379); 
$redis->set('test',"1111111111111"); 
$redis->setnx('test',"22222222"); 
echo $redis->get('test');  //结果:1111111111111 
$redis->delete('test'); 
$redis->setnx('test',"22222222"); 
echo $redis->get('test');  //结果:22222222 
?>
로그인 후 복사

6, presents

설명: 지정된 키가 존재하는지 확인

매개변수 key

반환 값: Bool 성공 반환: TRUE; 실패 반환: FALSE

예:

connect('127.0.0.1', 6379); 
$redis->set('test',"1111111111111"); 
var_dump($redis->exists('test'));  //结果:bool(true) 
?>
로그인 후 복사

7, incr


설명: 키 값 key를 저장하기 위한 숫자 증분입니다.

매개변수: 키 값: 키에 추가될 값

반환 값: INT 새 값

인스턴스:

connect('127.0.0.1', 6379); 
$redis->set('test',"123"); 
var_dump($redis->incr("test"));  //结果:int(124) 
var_dump($redis->incr("test"));  //结果:int(125) 
?>
로그인 후 복사

8. decr

설명: 키 값을 숫자 내림차순으로 저장합니다.

매개변수: 키 값: 키에 추가될 값

반환 값: 새 값 INT

인스턴스:

connect('127.0.0.1', 6379); 
$redis->set('test',"123"); 
var_dump($redis->decr("test"));  //结果:int(122) 
var_dump($redis->decr("test"));  //结果:int(121) 
?>
로그인 후 복사

9, getMultiple

설명: 지정된 모든 키의 값을 가져옵니다. . 하나 이상의 키가 존재하지 않으면 배열에 있는 해당 키의 값은 false입니다.

매개변수: 키 값을 포함하는 목록의 배열 ​​

반환 값: 모든 키의 값을 포함하는 배열을 반환합니다.

예:

connect('127.0.0.1', 6379); 
$redis->set('test1',"1"); 
$redis->set('test2',"2"); 
$result = $redis->getMultiple(array('test1','test2')); 
print_r($result);   //结果:Array ( [0] => 1 [1] => 2 ) 
?>
로그인 후 복사

10, lpush

설명: 목록 헤드에서 문자열 값을 추가합니다. 키가 존재하지 않는 경우 목록을 생성하십시오. 키가 존재하지만 목록이 아닌 경우 FALSE를 반환합니다.

매개변수: key, value

반환 값: 성공 시 배열 길이를 반환하고 실패 시 false

Instance:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
var_dump($redis->lpush("test","111"));   //结果:int(1) 
var_dump($redis->lpush("test","222"));   //结果:int(2) 
?>
로그인 후 복사

11, rpush

설명: 목록 끝에서 문자열 값을 추가합니다. . 키가 존재하지 않는 경우 목록을 생성하십시오. 키가 존재하지만 목록이 아닌 경우 FALSE를 반환합니다.

매개변수: key, value

반환 값: 성공 시 배열 길이를 반환하고 실패 시 false

예:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
var_dump($redis->lpush("test","111"));   //结果:int(1) 
var_dump($redis->lpush("test","222"));   //结果:int(2) 
var_dump($redis->rpush("test","333"));   //结果:int(3) 
var_dump($redis->rpush("test","444"));   //结果:int(4) 
?>
로그인 후 복사

12, lpop

설명: 목록의 첫 번째 요소를 반환하고 제거합니다

매개변수:key

반환 값: 첫 번째 요소의 값을 성공적으로 반환하고 실패 시 false를 반환합니다.

예:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->lpush("test","111"); 
$redis->lpush("test","222"); 
$redis->rpush("test","333"); 
$redis->rpush("test","444"); 
var_dump($redis->lpop("test"));  //结果:string(3) "222" 
?>
로그인 후 복사

13, lsize,llen

설명: 반환된 목록의 길이입니다. 목록이 존재하지 않거나 비어 있으면 명령은 0을 반환합니다. 키가 목록이 아닌 경우 이 명령은 FALSE를 반환합니다.

매개변수: Key

반환 값: 성공 시 배열 길이를 반환하고 실패 시 false를 반환합니다.

예:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->lpush("test","111"); 
$redis->lpush("test","222"); 
$redis->rpush("test","333"); 
$redis->rpush("test","444"); 
var_dump($redis->lsize("test"));  //结果:int(4) 
?>
로그인 후 복사

14, lget

설명: 지정된 키를 사용하여 목록에 저장된 지정된 요소를 반환합니다. . 0 첫 번째 요소, 1 초... -1 마지막 요소, -2 두 번째 마지막... 잘못된 인덱스나 키가 목록을 가리키지 않으면 FALSE를 반환합니다.

매개변수: 키 인덱스

반환 값: 지정된 요소의 값을 성공적으로 반환하고, 실패하면 false

예:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->lpush("test","111"); 
$redis->lpush("test","222"); 
$redis->rpush("test","333"); 
$redis->rpush("test","444"); 
var_dump($redis->lget("test",3));  //结果:string(3) "444" 
?>
로그인 후 복사

15, lset

설명: 지정된 인덱스에 새 값을 할당합니다. 목록, 인덱스가 없으면 false를 반환합니다.

매개 변수: 키 인덱스 값

반환 값: 성공 시 true 반환, 실패 시 false

예:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->lpush("test","111"); 
$redis->lpush("test","222"); 
var_dump($redis->lget("test",1));  //结果:string(3) "111" 
var_dump($redis->lset("test",1,"333"));  //结果:bool(true) 
var_dump($redis->lget("test",1));  //结果:string(3) "333" 
?>
로그인 후 복사

16, lgetrange

설명 :

Returns in this Area 지정된 키 목록 lGetRange(key, start, end)의 처음부터 끝까지 저장된 지정된 요소를 지정합니다. 0 첫 번째 요소, 1 두 번째 요소... -1 마지막 요소, -2 두 번째부터 마지막까지...

매개변수: 키 시작 끝

반환 값: 성공적으로 찾은 값을 반환하고, 실패하면 false를 반환합니다.

예:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->lpush("test","111"); 
$redis->lpush("test","222"); 
print_r($redis->lgetrange("test",0,-1));  //结果:Array ( [0] => 222 [1] => 111 ) 
?>
로그인 후 복사

17,lremove

설명: 헤드부터 시작하여 목록에서 일치하는 개수의 값을 제거합니다. count가 0이면 일치하는 모든 요소가 제거됩니다. count가 음수이면 내용이 끝부터 삭제됩니다.

매개변수: 키 개수 값

반환 값: 성공적으로 삭제된 항목 수를 반환하고, 실패하면 false

예:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->lpush('test','a'); 
$redis->lpush('test','b'); 
$redis->lpush('test','c'); 
$redis->rpush('test','a'); 
print_r($redis->lgetrange('test', 0, -1)); //结果:Array ( [0] => c [1] => b [2] => a [3] => a ) 
var_dump($redis->lremove('test','a',2));   //结果:int(2) 
print_r($redis->lgetrange('test', 0, -1)); //结果:Array ( [0] => c [1] => b ) 
?>
로그인 후 복사

18, sadd

설명: 키에 값을 추가합니다. 이 값이 이미 이 키에 있으면 FALSE를 반환합니다.

매개변수: 키 값

반환 값: 성공 시 true 반환, 실패 시 false

예:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
var_dump($redis->sadd('test','111'));   //结果:bool(true) 
var_dump($redis->sadd('test','333'));   //结果:bool(true) 
print_r($redis->sort('test')); //结果:Array ( [0] => 111 [1] => 333 ) 
?>
로그인 후 복사

19, sremove

描述:删除Key中指定的value值

参数:key member

返回值:true or false

范例:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->sadd('test','111'); 
$redis->sadd('test','333'); 
$redis->sremove('test','111'); 
print_r($redis->sort('test'));    //结果:Array ( [0] => 333 ) 
?>
로그인 후 복사

20,smove

描述:将Key1中的value移动到Key2中

参数:srcKey dstKey member

返回值:true or false

范例

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->delete('test1'); 
$redis->sadd('test','111'); 
$redis->sadd('test','333'); 
$redis->sadd('test1','222'); 
$redis->sadd('test1','444'); 
$redis->smove('test',"test1",'111'); 
print_r($redis->sort('test1'));    //结果:Array ( [0] => 111 [1] => 222 [2] => 444 ) 
?>
로그인 후 복사

21,scontains

描述:检查集合中是否存在指定的值。

参数:key value

返回值:true or false

范例:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->sadd('test','111'); 
$redis->sadd('test','112'); 
$redis->sadd('test','113'); 
var_dump($redis->scontains('test', '111')); //结果:bool(true) 
?>
로그인 후 복사

22,ssize

描述:返回集合中存储值的数量

参数:key

返回值:成功返回数组个数,失败0

范例:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->sadd('test','111'); 
$redis->sadd('test','112'); 
echo $redis->ssize('test');   //结果:2 
?>
로그인 후 복사

23,spop

描述:随机移除并返回key中的一个值

参数:key

返回值:成功返回删除的值,失败false

范例:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->sadd("test","111"); 
$redis->sadd("test","222"); 
$redis->sadd("test","333"); 
var_dump($redis->spop("test"));  //结果:string(3) "333" 
?>
로그인 후 복사

24,sinter

描述:返回一个所有指定键的交集。如果只指定一个键,那么这个命令生成这个集合的成员。如果不存在某个键,则返回FALSE。

参数:key1, key2, keyN

返回值:成功返回数组交集,失败false

范例:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->sadd("test","111"); 
$redis->sadd("test","222"); 
$redis->sadd("test","333"); 
$redis->sadd("test1","111"); 
$redis->sadd("test1","444"); 
var_dump($redis->sinter("test","test1"));  //结果:array(1) { [0]=> string(3) "111" } 
?>
로그인 후 복사

25,sinterstore

描述:执行sInter命令并把结果储存到新建的变量中。

参数:

Key: dstkey, the key to store the diff into.

Keys: key1, key2… keyN. key1..keyN are intersected as in sInter.

返回值:成功返回,交集的个数,失败false

范例:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->sadd("test","111"); 
$redis->sadd("test","222"); 
$redis->sadd("test","333"); 
$redis->sadd("test1","111"); 
$redis->sadd("test1","444"); 
var_dump($redis->sinterstore('new',"test","test1"));  //结果:int(1) 
var_dump($redis->smembers('new'));  //结果:array(1) { [0]=> string(3) "111" } 
?>
로그인 후 복사

26,sunion

描述:

返回一个所有指定键的并集

参数:

Keys: key1, key2, … , keyN

返回值:成功返回合并后的集,失败false

范例:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->sadd("test","111"); 
$redis->sadd("test","222"); 
$redis->sadd("test","333"); 
$redis->sadd("test1","111"); 
$redis->sadd("test1","444"); 
print_r($redis->sunion("test","test1"));  //结果:Array ( [0] => 111 [1] => 222 [2] => 333 [3] => 444 ) 
?>
로그인 후 복사

27,sunionstore

描述:执行sunion命令并把结果储存到新建的变量中。

参数:

Key: dstkey, the key to store the diff into.

Keys: key1, key2… keyN. key1..keyN are intersected as in sInter.

返回值:成功返回,交集的个数,失败false

范例:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->sadd("test","111"); 
$redis->sadd("test","222"); 
$redis->sadd("test","333"); 
$redis->sadd("test1","111"); 
$redis->sadd("test1","444"); 
var_dump($redis->sinterstore('new',"test","test1"));  //结果:int(4) 
print_r($redis->smembers('new'));  //结果:Array ( [0] => 111 [1] => 222 [2] => 333 [3] => 444 ) 
?>
로그인 후 복사

28,sdiff

描述:返回第一个集合中存在并在其他所有集合中不存在的结果

参数:Keys: key1, key2, … , keyN: Any number of keys corresponding to sets in redis.

返回值:成功返回数组,失败false

范例:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->sadd("test","111"); 
$redis->sadd("test","222"); 
$redis->sadd("test","333"); 
$redis->sadd("test1","111"); 
$redis->sadd("test1","444"); 
print_r($redis->sdiff("test","test1"));  //结果:Array ( [0] => 222 [1] => 333 ) 
?>
로그인 후 복사

29,sdiffstore

描述:执行sdiff命令并把结果储存到新建的变量中。

参数:

Key: dstkey, the key to store the diff into.

Keys: key1, key2, … , keyN: Any number of keys corresponding to sets in redis

返回值:成功返回数字,失败false

范例:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->sadd("test","111"); 
$redis->sadd("test","222"); 
$redis->sadd("test","333"); 
$redis->sadd("test1","111"); 
$redis->sadd("test1","444"); 
var_dump($redis->sdiffstore('new',"test","test1"));  //结果:int(2) 
print_r($redis->smembers('new'));  //结果:Array ( [0] => 222 [1] => 333 ) 
?>
로그인 후 복사

30,smembers, sgetmembers

描述:

返回集合的内容

参数:Key: key

返回值:An array of elements, the contents of the set.

范例:

connect('127.0.0.1', 6379); 
$redis->delete('test'); 
$redis->sadd("test","111"); 
$redis->sadd("test","222"); 
print_r($redis->smembers('test'));  //结果:Array ( [0] => 111 [1] => 222 ) 
?>
로그인 후 복사

 php-redis当中,有很多不同名字,但是功能一样的函数,例如:lrem和lremove,这里就不例举了。

更多PHP相关知识,请访问PHP中文网

위 내용은 30개의 PHP 작업 Redis 공통 메소드 코드 예제의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:juejin.im
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿