PHP操作Redis LIST ,SET, HASH 的相关命令 (一)

本文详细介绍了如何使用PHP操作Redis的List、SET和HASH数据结构。包括List的lPush/rPush等操作,SET的sAdd/sRem等操作,以及HASH的hSet/hGet等方法,帮助开发者全面理解PHP与Redis的数据交互。
摘要由CSDN通过智能技术生成

1.PHP操作Redis之List

1、lPush()/rPush()

lPush()的语法格式是:$redis->lPush(key, value),作用是将value添加到链表key的左边(头部)。
rPush()的语法格式是:$redis->rPush(key, value),作用是将value添加到链表key的右边(尾部)。

2、lPushx()/rPushx()

lPushx 将值value插入到列表key的表头,当且仅当key存在并且是一个列表。
rPushx 将值value插入到列表key的表尾,当且仅当key存在并且是一个列表。

3、lPop()/rPop()

lPop()的语法格式是:$redis->lPop(key),作用是将链表key的左边(头部)元素删除。
rPop()的语法格式是:$redis->rPop(key),作用是将链表key的右边(尾部)元素删除。

4、lSize()

lSize()的语法格式是:$redis->lSize(key),作用是返回链表key中有多少个元素。

5、lGet()/lIndex()

lGet()的语法格式是:$redis->lGet(key, index),作用是返回链表key的index位置的元素值。

6、lSet()

lSet()的语法格式是:$redis->lSet(key, index, value),作用是将链表key的index位置的元素值设为value。

7、lRange()/lGetRange()

lRange()的语法格式是:$redis->lRange(key, start, end),作用是返回链表key中start到end位置间的元素。end为-1时,返回所有元素。例如:
//返回链表lang中的所有元素
print_r($redis->lRange('lang', 0, -1));

8、lTrim()/listTrim()

lTrim()的语法格式是:$redis->lTrim(key, start, end),作用是截取链表key中start到end位置间的元素。

9、lRem()/lRemove()

lRem()的语法格式是:$redis->lRem(key, value, count),作用是删除链表key中count个值为value的元素。count0,则删除所有value;count大于0,则从头到尾删除count<span style="font-family: Arial, Helvetica, sans-serif;">个元素;count小于0,则从尾到头删除count个元素。</span>

2.PHP操作Redis之SET(集合)

1、sAdd()

添加一个VALUE到SET容器中,如果这个VALUE已经存在于SET中,那么返回FLASE。
$redis->sAdd('key1' , 'member1'); /* TRUE, 'key1' => {
  'member1'} */
$redis->sAdd('key1' , 'member2'); /* TRUE, 'key1' => {
  'member1', 'member2'}*/
$redis->sAdd('key1' , 'member2'); /* FALSE, 'key1' => {
  'member1', 'member2'}*/

2、sRem()

将member元素从source集合移动到destination集合中。
如果source集合不存在或不包含指定的member元素,则SMOVE命令不执行任何操作,仅返回0。否则,member元素从source集合中被移除,并添加到destination集合中去。
当destination集合已经包含member元素时,SMOVE命令只是简单地将source集合中的member元素删除。
当source或destination不是集合类型时,返回一个错误。
$redis->sAdd('key1' , 'member11');
$redis->sAdd('key1' , 'member12');
$redis->sAdd('key1' , 'member13'); /* 'key1' => {
  'member11', 'member12', 'member13'}*/
$redis->sAdd('key2' , 'member21');
$redis->sAdd('key2' , 'member22'); /* 'key2' => {
  'member21', 'member22'}*/
$redis->sMove('key1', 'key2', 'member13'); /* 'key1' =>  {
  'member11', 'member12'} *//* 'key2' =>  {
  'member21', 'member22', 'member13'} */

3、sMove()

将member元素从source集合移动到destination集合中。
如果source集合不存在或不包含指定的member元素,则SMOVE命令不执行任何操作,仅返回0。否则,member元素从source集合中被移除,并添加到destination集合中去。
当destination集合已经包含member元素时,SMOVE命令只是简单地将source集合中的member元素删除。
当source或destination不是集合类型时,返回一个错误。
$redis->sAdd('key1' , 'member11');
$redis->sAdd('key1' , 'member12');
$redis->sAdd('key1' , 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值