redis 的基本操作方法

1 redis 的连接 :

 //实例化redis$redis = new Redis();//连接 $redis->connect('127.0.0.1', 6379);//检测是否连接成功echo "Server is running: " . $redis->ping();// 输出结果 Server is running: +PONG

2 redis 操作 Strng (字符串):

// 设置一个字符串的值$redis->set('cat', 111);//获取一个字符串的值echo $redis->get('cat'); // 111// 重复set$redis->set('cat', 222);echo $redis->get('cat'); // 222

3 redis 操作 List (列表):

  //存储数据到列表中$redis->lpush('list', 'html');$redis->lpush('list', 'css');$redis->lpush('list', 'php');//获取列表中所有的值$list = $redis->lrange('list', 0, -1);print_r($list);echo '<br>'; // Array ( [0] => php [1] => css [2] => html )//从右侧加入一个$redis->rpush('list', 'mysql');$list = $redis->lrange('list', 0, -1);print_r($list);echo '<br>';// Array ( [0] => php [1] => css [2] => html [3] => mysql )//从左侧弹出一个$redis->lpop('list');$list = $redis->lrange('list', 0, -1);print_r($list);echo '<br>';// Array ( [0] => css [1] => html [2] => mysql )//从右侧弹出一个$redis->rpop('list');$list = $redis->lrange('list', 0, -1);print_r($list);echo '<br>';// Array ( [0] => css [1] => html )

4 redis 操作 Hash (字典):

<?php//实例化redis$redis = new Redis();//连接$redis->connect('127.0.0.1', 6379);//字典//给hash表中某个key设置value//如果没有则设置成功,返回1,如果存在会替换原有的值,返回0,失败返回0echo $redis->hset('hash', 'cat', 'cat');echo '<br>';   // 1echo $redis->hset('hash', 'cat', 'cat');echo '<br>';   // 0echo $redis->hset('hash', 'cat', 'cat1');echo '<br>';   // 0echo $redis->hset('hash', 'dog', 'dog');echo '<br>';   // 1echo $redis->hset('hash', 'bird', 'bird');echo '<br>';   // 1echo $redis->hset('hash', 'monkey', 'monkey');echo '<br>';   // 1//获取hash中某个key的值echo $redis->hget('hash', 'cat');echo '<br>';  // cat1//获取hash中所有的keys$arr = $redis->hkeys('hash');print_r($arr);echo '<br>';// Array ( [0] => cat [1] => dog [2] => bird [3] => monkey )//获取hash中所有的值 顺序是随机的$arr = $redis->hvals('hash');print_r($arr);echo '<br>'; // Array ( [0] => cat1 [1] => dog [2] => bird [3] => monkey )//获取一个hash中所有的key和value 顺序是随机的$arr = $redis->hgetall('hash');print_r($arr);echo '<br>'; // Array ( [cat] => cat1 [dog] => dog [bird] => bird [monkey] => monkey )//获取hash中key的数量echo $redis->hlen('hash');echo '<br>'; // 4//删除hash中一个key 如果表不存在或key不存在则返回falseecho $redis->hdel('hash', 'dog');echo '<br>';var_dump($redis->hdel('hash', 'rabbit'));echo '<br>';// 1// int(0)

5 redis 操作 Set (集合):

<?php//实例化redis$redis = new Redis();//连接$redis->connect('127.0.0.1', 6379);//集合// 添加一个元素echo $redis->sadd('set', 'cat');echo '<br>';         // 1echo $redis->sadd('set', 'cat');echo '<br>';         // 0echo $redis->sadd('set', 'dog');echo '<br>';        // 1echo $redis->sadd('set', 'rabbit');echo '<br>';     // 1echo $redis->sadd('set', 'bear');echo '<br>';      // 1echo $redis->sadd('set', 'horse');echo '<br>';    // 1// 查看集合中所有的元素$set = $redis->smembers('set');print_r($set);echo '<br>';// Array ( [0] => rabbit [1] => cat [2] => bear [3] => dog [4] => horse )//删除集合中的valueecho $redis->srem('set', 'cat');echo '<br>';    // 1var_dump($redis->srem('set', 'bird'));echo '<br>';     // int(0)$set = $redis->smembers('set');print_r($set);echo '<br>';// Array ( [0] => dog [1] => rabbit [2] => horse [3] => bear )//判断元素是否是set的成员var_dump($redis->sismember('set', 'dog'));echo '<br>';     // bool(true)var_dump($redis->sismember('set', 'bird'));echo '<br>';    // bool(false)//查看集合中成员的数量echo $redis->scard('set');echo '<br>';    // 4//移除并返回集合中的一个随机元素(返回被移除的元素)echo $redis->spop('set');echo '<br>';  // bearprint_r($redis->smembers('set'));echo '<br>';    // Array ( [0] => dog [1] => rabbit [2] => horse )<?php//实例化redis$redis = new Redis();//连接$redis->connect('127.0.0.1', 6379);//集合$redis->sadd('set', 'horse');$redis->sadd('set', 'cat');$redis->sadd('set', 'dog');$redis->sadd('set', 'bird');$redis->sadd('set2', 'fish');$redis->sadd('set2', 'dog');$redis->sadd('set2', 'bird');print_r($redis->smembers('set'));echo '<br>'; // Array ( [0] => cat [1] => dog [2] => bird [3] => horse )print_r($redis->smembers('set2'));echo '<br>';// Array ( [0] => bird [1] => dog [2] => fish )//返回集合的交集print_r($redis->sinter('set', 'set2'));echo '<br>';// Array ( [0] => dog [1] => bird )//执行交集操作 并结果放到一个集合中$redis->sinterstore('output', 'set', 'set2');print_r($redis->smembers('output'));echo '<br>';// Array ( [0] => dog [1] => bird )//返回集合的并集print_r($redis->sunion('set', 'set2'));echo '<br>';// Array ( [0] => cat [1] => dog [2] => bird [3] => horse [4] => fish )//执行并集操作 并结果放到一个集合中$redis->sunionstore('output', 'set', 'set2');print_r($redis->smembers('output'));echo '<br>'; // Array ( [0] => cat [1] => dog [2] => bird [3] => horse [4] => fish )//返回集合的差集print_r($redis->sdiff('set', 'set2'));echo '<br>';// Array ( [0] => horse [1] => cat )//执行差集操作 并结果放到一个集合中$redis->sdiffstore('output', 'set', 'set2');print_r($redis->smembers('output'));echo '<br>';// Array ( [0] => horse [1] => cat )

6 redis 操作 Sorted Set (有序集合):

  <?php//实例化redis$redis = new Redis();//连接$redis->connect('127.0.0.1', 6379);//有序集合//添加元素 分数echo $redis->zadd('set', 1, 'cat');echo '<br>';      // 1echo $redis->zadd('set', 2, 'dog');echo '<br>';    // 1echo $redis->zadd('set', 3, 'fish');echo '<br>';    // 1echo $redis->zadd('set', 4, 'dog');echo '<br>';    // 0echo $redis->zadd('set', 4, 'bird');echo '<br>';    // 1//返回集合中的所有元素print_r($redis->zrange('set', 0, -1));echo '<br>';// Array ( [0] => cat [1] => fish [2] => bird [3] => dog )print_r($redis->zrange('set', 0, -1, true));echo '<br>';// Array ( [cat] => 1 [fish] => 3 [bird] => 4 [dog] => 4 )//返回元素的score值echo $redis->zscore('set', 'dog');echo '<br>';// 4//返回存储的个数echo $redis->zcard('set');echo '<br>';// 4//删除指定成员$redis->zrem('set', 'cat');print_r($redis->zrange('set', 0, -1));echo '<br>';// Array ( [0] => fish [1] => bird [2] => dog )//返回集合中介于min和max之间的值的个数print_r($redis->zcount('set', 3, 5));echo '<br>';// 3//返回有序集合中score介于min和max之间的值print_r($redis->zrangebyscore('set', 3, 5));echo '<br>'; // Array ( [0] => fish [1] => bird [2] => dog )print_r($redis->zrangebyscore('set', 3, 5, ['withscores'=>true]));echo '<br>'; // Array ( [fish] => 3 [bird] => 4 [dog] => 4 )//返回集合中指定区间内所有的值 倒叙print_r($redis->zrevrange('set', 1, 2));echo '<br>'; // Array ( [0] => bird [1] => fish )print_r($redis->zrevrange('set', 1, 2, true));echo '<br>';// Array ( [bird] => 4 [fish] => 3 )//有序集合中指定值的socre增加echo $redis->zscore('set', 'dog');echo '<br>'; // 4$redis->zincrby('set', 2, 'dog');echo $redis->zscore('set', 'dog');echo '<br>';// 6//移除score值介于min和max之间的元素print_r($redis->zrange('set', 0, -1, true));echo '<br>';// Array ( [fish] => 3 [bird] => 4 [dog] => 6 )print_r($redis->zremrangebyscore('set', 3, 4));echo '<br>'; // 2print_r($redis->zrange('set', 0, -1, true));echo '<br>'; // Array ( [dog] => 6 )//结果

相关推荐:《PHP教程》《Redis教程》

更多相关文章

  1. laradock环境docker-compose操作
  2. 关于mysql操作的详细总结以及实例(一)
  3. php实现特殊字符的替换操作
  4. PHP基于limit子句的分页详细操作
  5. 方便实用的PHP数据库操作类
  6. PHP实现数据分页显示详细操作
  7. 有关PHP中PDO连接数据库的详细教程与实际操作演示
  8. TP5框架下MySQL通过LOAD DATA INFILE批量导入数据详细操作
  9. mac下多个php版本切换(可操作版)

随机推荐

  1. android之接收和发送广播的开机可自动运
  2. Android通知的基本用法
  3. android获取wifi信号强度
  4. Android ScrollView 内部控件 layout_mar
  5. android button 上添加图片
  6. [置顶] Android高手进阶教程(四)之----An
  7. android 自动化(1)
  8. 解决java.lang.RuntimeException: Unable
  9. Fiddler跟踪监控android数据包
  10. android 新增一個廣播偵聽USB設備的插拔