Redis 主要能存储 5 种数据结构,分别是 strings,hashes,lists,sets 以及 sorted sets。

新建一个 redis 数据库

$redis = new Redis();

// false => fail
// true => success
$isSuccess = $redis->connect('127.0.0.1', 6379);

Strings

Strings 非常简单,基本用法是接收两个参数当做 key-value 键值对存入 redis,还可以设置存入 redis 的有效时间(ttl)。

// String
$redis->set('name', 'hanzichi');

// with a ttl of seconds
// 有效时间为 10s
$redis->setEx('name', 10, 'hanzichi');

// with a ttl of milliseconds
// 有效时间为 1000 milliseconds
$redis->pSetEx('name', 1000, 'hanzichi');

$name = $redis->get('name'); // hanzichi

Hashes

Hashes 基本用法传入三个参数,第一个参数为 key 值,表示该 hash 集合的名字,后面两个参数为键值对。

// Hashes
$key = 'library';
// 存入名为 library 的 hash 中
$redis->hset($key, 'name', 'shanghai_library');
$redis->hset($key, 'age', '20');
$redis->hset($key, 'place', 'Pudong');

$name = $redis->hget($key, 'name'); // shanghai_library
var_dump($redis->hKeys($key));
var_dump($redis->hVals($key));
var_dump($redis->hGetAll($key));

比如上面例子的 hash 集合为 library,age-20 等为键值对,很像 JavaScript 中的对象,library 为对象名。

Lists

Lists 类似数组。

// List
$redis->rpush('stars', 'Chris Paul');
$redis->rpush('stars', 'Jason Kidd');

// return all the elements
$stars = $redis->lrange('stars', 0, -1); // ['Chris Paul', 'Jason Kidd']

如上,stars 即为数组名,可以用一系列方法对该 "数组" 进行操作。

Sets

sets,顾名思义,就是集合,集合,当然会去重。第一个参数还是为 key,为集合名。

// Sets
$redis->sadd('country', 'China');
$redis->sadd('country', array('Japan', 'England'));

// 是否在集合中
$isInSet = $redis->sismember('country', 'China'); // true

Sorted Sets

和 sets 不同的是,Sorted Sets 可以接收另外一个 double 类型的参数,根据该参数可以返回具体的 value 值。

// Sorted Sets
$redis->zAdd('province', 1, 'Zhejiang');
$redis->zAdd('province', 0, 'Fujian');
$redis->zAdd('province', 5, 'Beijing');
$province = $redis->zRange('province', 0, -1);
var_dump($province);
/*
array
  0 => string 'Fujian' (length=6)
  1 => string 'Zhejiang' (length=8)
  2 => string 'Beijing' (length=7)
  */

其他

// 获取当前 redis 中 keys 数量
$count = $redis->dbSize();
echo $count;

// 获取 keys
$arList = $redis->keys("*");
var_dump($arList);

// 获取以 pro 为前缀的 keys
$keyWithUserPrefix = $redis->keys('pro*');
var_dump($keyWithUserPrefix);

// Remove all keys from all databases.
$redis->flushAll();

// Remove all keys from the current database.
$redis->flushDb();

More

更多可以参考以下:

常用 redis 命令(for php)的更多相关文章

  1. 常用Redis命令

    在 Windows 下配置 Redis 集群 在 Windows 下配置多个 Redis(简化配置) MicrosoftArchive/redis 官方Redis集群搭建文档 Redis命令 Cent ...

  2. 常用的redis命令

      常用的redis命令 http://www.runoob.com/redis/redis-tutorial.html 菜鸟教程   Cmd连接有密码的redis:$ redis-cli -h ho ...

  3. redis常用的命令总结

    redis常用的命令大全 1.基于内存的key-value数据库 2.基于c语言编写的,可以支持多种语言的api //set每秒11万次,取get 81000次 3.支持数据持久化 4.value可以 ...

  4. redis常用监控命令

    redis常用监控命令 1.实时监控redis服务收到来自应用的所有命令 1 2 3 4 5 6 7 redis-cli   127.0.0.1:6379>monitor   150996415 ...

  5. redis的安装使用以及一些常用的命令

    Redis是一个key-value存储系统.并提供多种语言的API,我们可使用它构建高性能,可扩展的Web应用程序.目前越来越多的网站用它来当做缓存,减轻服务器的压力. 本文安装用的到redis是绿色 ...

  6. 什么是redis?常用的命令有哪些?

    1.什么是redis? redis是一个高性能的key-value数据库,它是完全开源免费的,而且redis是一个NOSQL类型数据库,是为了解决高并发.高扩展,大数据存储等一系列的问题而产生的数据库 ...

  7. redis常用的命令行以及操作

    redis常用的命令行以及操作 转载酱紫人的理直气壮 最后发布于2018-07-30 17:00:41 阅读数 805  收藏 转载地址:https://blog.csdn.net/li_lening ...

  8. Redis命令

    redis的常用命令主要分为两个方面.一个是键值相关命令.一个是服务器相关命令(redis-cli进入终端) 1.键值相关命令 keys * 取出当前所有的key exists name 查看n是否有 ...

  9. 常用Linux命令笔记

    任何脱离业务的架构都是耍流氓 只记录实际常用的Linux命令 常用Linux命令 查找安装路径: whereis nginx 查询nginx进程: ps aux|grep nginx 查看 CentO ...

随机推荐

  1. Linux SendMail发送邮件失败诊断案例(三)

    一Linux服务器突然发送不出邮件,检查了很多地方都没有发现异常,检查/var/log/maillog发现如下具体信息: Apr 12 00:36:04 mylinux sendmail[4685]: ...

  2. 十五天精通WCF——终结篇 那些你需要注意的坑

    终于一路走来,到了本系列的最后一篇了,这一篇也没什么好说的,整体知识框架已经在前面的系列文章中讲完了,wcf的配置众多,如果 不加一些指定配置,你可能会遇到一些灾难性的后果,快来一睹为快吧. 一: 第 ...

  3. 挖一挖C#中那些我们不常用的东西之系列(5)——FlagAttribute

    说到FlagsAttribute,源自前几天看到了一小段代码,大概意思就是根据航班政策来返回哪些配送方式是否可用,根据这些是否可用 来隐藏或者开启界面的相关配送方式,如果大家订过机票可能知道配送方式有 ...

  4. T-SQL基础--TOP

    理解TOP子句 众所周知,TOP子句可以通过控制返回行的数量来影响查询. 我们知道TOP子句能很容易的满足返回指定行数的子集,接下来有一些例子来展示什么情况下使用TOP子句来返回一个结果集: 你打算返 ...

  5. CKEditor与CKFinder的配置(ASP.NET环境)

    CKEditor是一个专门使用在网页上的所得文字编辑器,适用于PHP.ASP.NET.Java等后端开发语言.CKEditor原名为FCKeditor,“FCK” 是这个编辑器的作者的名字Freder ...

  6. MySql安装与MySQL添加用户、删除用户与授权

    1.安装MySql       目前MySQL有两种形式的文件,一个是msi格式,一个是zip格式的.msi格式的直接点击setup.exe就好,按照步骤进行.但是很多人下了zip格式的解压发现没有s ...

  7. InnoDB源码分析--缓冲池(三)

    转载请附原文链接:http://www.cnblogs.com/wingsless/p/5582063.html 昨天写到了InnoDB缓冲池的预读:<InnoDB源码分析--缓冲池(二)> ...

  8. mysql学习笔记(一)

    my建表操作 创建表 create Table <表名> ( 字段名1,数据类型 [列级约束] [默认值], 字段名2,数据类型 [列级约束] [默认值], ... [表级约束], [co ...

  9. ubuntu同时安装qt4.8和qt5.7

    这是ubuntu默认安装(从apt安装)的路径和相关文件,建议编译安装到/opt目录下,使用./configure --prefix=/opt/Qt4.8 /usr/share/qt4 /usr/sh ...

  10. 工作中常用的Linux命令:find命令

    本文链接:http://www.cnblogs.com/MartinChentf/p/6056571.html (转载请注明出处) 1.命令格式 find [-H] [-L] [-P] [-D deb ...