常用 redis 命令(for php)
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
更多可以参考以下:
- phpredis/phpredis (推荐,针对 php 各种 api 使用方式)
- PHP-redis 中文文档
- An Introduction to Redis in PHP using Predis
- getting-started-with-redis-in-php
- How to Use Redis with PHP using PhpRedis with Examples
- redis php 实例一
- redis php 实例二
- The basic use case of redis in PHP (一堆代码)
- Redis 命令参考 (不是单独针对 php 的)
- redis 官网
常用 redis 命令(for php)的更多相关文章
- 常用Redis命令
在 Windows 下配置 Redis 集群 在 Windows 下配置多个 Redis(简化配置) MicrosoftArchive/redis 官方Redis集群搭建文档 Redis命令 Cent ...
- 常用的redis命令
常用的redis命令 http://www.runoob.com/redis/redis-tutorial.html 菜鸟教程 Cmd连接有密码的redis:$ redis-cli -h ho ...
- redis常用的命令总结
redis常用的命令大全 1.基于内存的key-value数据库 2.基于c语言编写的,可以支持多种语言的api //set每秒11万次,取get 81000次 3.支持数据持久化 4.value可以 ...
- redis常用监控命令
redis常用监控命令 1.实时监控redis服务收到来自应用的所有命令 1 2 3 4 5 6 7 redis-cli 127.0.0.1:6379>monitor 150996415 ...
- redis的安装使用以及一些常用的命令
Redis是一个key-value存储系统.并提供多种语言的API,我们可使用它构建高性能,可扩展的Web应用程序.目前越来越多的网站用它来当做缓存,减轻服务器的压力. 本文安装用的到redis是绿色 ...
- 什么是redis?常用的命令有哪些?
1.什么是redis? redis是一个高性能的key-value数据库,它是完全开源免费的,而且redis是一个NOSQL类型数据库,是为了解决高并发.高扩展,大数据存储等一系列的问题而产生的数据库 ...
- redis常用的命令行以及操作
redis常用的命令行以及操作 转载酱紫人的理直气壮 最后发布于2018-07-30 17:00:41 阅读数 805 收藏 转载地址:https://blog.csdn.net/li_lening ...
- Redis命令
redis的常用命令主要分为两个方面.一个是键值相关命令.一个是服务器相关命令(redis-cli进入终端) 1.键值相关命令 keys * 取出当前所有的key exists name 查看n是否有 ...
- 常用Linux命令笔记
任何脱离业务的架构都是耍流氓 只记录实际常用的Linux命令 常用Linux命令 查找安装路径: whereis nginx 查询nginx进程: ps aux|grep nginx 查看 CentO ...
随机推荐
- NuGet学习笔记3——搭建属于自己的NuGet服务器
文章导读 创建NuGetServer Web站点 发布站点到IIS 添加本地站点到包包数据源 在上一篇NuGet学习笔记(2) 使用图形化界面打包自己的类库 中讲解了如何打包自己的类库,接下来进行最重 ...
- Javascript之旅——第三站:几个需要注意的运算符
平时写惯了C#,所以会觉得什么样的运算符就应该做什么样的运算,但是有一天你的习惯被其他语言颠覆了,不知道是不是有一股强大的好奇 心,刚好在js中,我的这种习惯就被颠覆了,下面就看看哪些运算符颠覆了我的 ...
- 开窗函数 --over()
一个学习性任务:每个人有不同次数的成绩,统计出每个人的最高成绩. 这个问题应该还是相对简单,其实就用聚合函数就好了. select id,name,max(score) from Student gr ...
- 【函数】Oracle函数系列(2)--数学函数及日期函数
[函数]Oracle函数系列(2)--数学函数及日期函数 1 BLOG文档结构图 2 前言部分 2.1 导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不 ...
- 总结eclipse中安装maven插件
当自己越来越多的接触到开源项目时,发现大多数的开源项目都是用maven来够建的.并且在开发应用时,也越来越意识到maven的确会解决很多问题,如果你要了解maven,可以参考:Maven入门指南(一) ...
- Spark大数据的学习历程
Spark主要的编程语言是Scala,选择Scala是因为它的简洁性(Scala可以很方便在交互式下使用)和性能(JVM上的静态强类型语言).Spark支持Java编程,但对于使用Java就没有了Sp ...
- [SqlServer]创建链接服务器
把一个数据库中数据表中的内容,从一个SQL SERVER服务器 导出到另一个SQL Server服务器 不同服务器数据库之间的数据操作 --创建链接服务器 exec sp_addlinkedserv ...
- 腾讯开放平台 IOS应用URL schema、Boundle ID填写 (含微博、微信)
解释如下: qq比较麻烦点,需要两个 URL schemes 1.QQ+appID(appid原本是10进制的,需要转换16进制,网址:http://tool.oschina.net/hexconve ...
- 13款经典BI项目报表&界面风格设计方案
说明 1.方案取自报表开发工具FineReport案例的配色方案 2.所有设计方案图中已标注了字体.颜色与间隔距离等,可直接调用. 报表&界面风格设计方案展示 灰蓝界面 绿色与金色 蓝绿清新风 ...
- [书目20160612]思考软件,创新设计——A段架构师的思考技术
高焕堂:在校时期主修统计学和信息管理,将近40年软件开发生涯.工作于亚洲和欧美各地区,专精于商业策略思考和系统架构设计.近年来,热衷于<it+设计>教育顾问和产品开发. 第1章 商业思维 ...