php redis使用,PHP-Redis扩展使用手册(一)

标签:

//初始化redis实例

$redis = new Redis();

/* connect 、 open 链接redis

* @param string host redis服务器地址

* @param int port 链接端口 可选

* @param float timeout 链接超时时间,可选,默认为0无限制

* @param NULL reserved 如果retry_interval有值,reserved应该为NULL

* @param int intry_interval 相隔intry_interval后尝试重新连接 可选

* @return bool 成功返回true,失败返回false

*/

$redis->connect($redis_host,$redis_port);

/* 连接到一个redis实例或重用的连接已经建立

* @param string host redis服务器地址

* @param int port 链接端口 可选

* @param float timeout 链接超时时间,可选,默认为0无限制

* @param NULL reserved 如果retry_interval有值,reserved应该为NULL

* @param int intry_interval 相隔intry_interval后尝试重新连接 可选

* @return bool 成功返回true,失败返回false

*/

$redis->pconnect($redis_host,$redis_port);

/* 使用密码验证连接是否合法,警告:密码在网络中使用明文传输

* @param string password 密码

* @return bool 合法返回true,否则返回false

*/

$redis->auth(‘password‘);

/* 改变当前连接中已经选择的数据库,默认当前数据库下标为0,数据库16个

* @param index INTEGER 数据库下标

* @return bool 成功返回true,失败返回false

*/

$redis->select(1);

/* 在当前redis实例中关闭除了使用pconnect建立的链接 */

$redis->close();

/* 设置客户端配置

* @param name 配置名称

* @param value 配置值

* @return bool 成功返回true,失败返回false

*/

$redis->setOption(Redis::OPT_SERIALIZER, Redis::SERIALIZER_NONE);

/* 获取客户端配置

* @param name 配置名称

* @return value 配置值

*/

$redis->getOption(Redis::OPT_SERIALIZER);

/* 检查当前链接状态

* @return value 成功返回"+PONG",否则抛出RedisException异常

*/

$redis->ping();

/* 发送一段字符串到redis服务,然后返回相同字符串

* @param string message 发送字符串

* @return string 返回消息

*/

$redis->echo(‘echo_msg‘);

/* 开始在后台重写AOF(AppendOnly FILE),数据库持久化

* @return bool 成功返回true,失败返回false

*/

$redis->bgrewriteaof();

/* 将数据异步保存到硬盘中

* @return bool 成功返回true,失败返回false,如果保存已经在运行,则返回false

*/

$redis->bgsave();

/* 获取或者设置redis服务器配置参数

* @param string operation “GET” 或者 “SET”

* @param string key 获取或者设置的key

* @param string value 获取或者设置的value

* @return 如果是set,则返回bool,如果是get,则返回value

*/

$redis->config("GET","*max-*-entries");

$redis->config("SET","dir","/var/run/redis/dumps/");

/* 返回当前数据库key的数量

* @return int 数据库key的数量

*/

$redis->dbsize();

/* 移除所有数据库中所有的key

* @return bool true 总是返回true

*/

$redis->flushAll();

/* 移除所有key从当前数据库中

* @return value true 总是返回true

*/

$redis->flushDB();

/* 获取关于服务器信息和统计,

* 无参数是 返回:

* redis_version redis版本信息

* arch_bits 框架(x86/x64)

* uptime_in_seconds redis运行的秒数

* uptime_in_days redis运行的天数

* connected_clients 客户端链接数

* connected_slaves 从服务器链接数

* used_memory 已使用内存大小

* changes_since_last_save 距离最近一次成功创建持久化文件之后,经过了多少秒

* bgsave_in_progress 一个标志值,记录了服务器是否正在创建 RDB 文件

* last_save_time 最近一次成功创建 RDB 文件的 UNIX 时间戳

* total_connections_received 服务器已接受的连接请求数量

* total_commands_processed 服务器已执行的命令数量

* role 如果当前服务器没有在复制任何其他服务器,那么这个域的值就是 master ;否则的话,这个域的值就是 slave 。注意,在创建复制链的时候,一个从服务器也可能是另一个服务器的主服务器。

* 如果存在参数,则获取参数对应部分数据,详细参照:http://redisdoc.com/server/info.html

* @param string 获取那部分数据

* @return assoc_array 关于服务器的消息或统计

*/

$redis->info(); /* standard redis INFO command */

$redis->info("COMMANDSTATS"); /* Information on the commands that have been run (>=2.6 only)*/

$redis->info("CPU");/* just CPU information from Redis INFO */

/* 返回上次保存数据到硬盘的时间戳

* @return int 时间戳

*/

$redis->lastSave();

/* 重置info()函数返回的那些信息

* @return bool 成功返回true,失败返回false

*/

$redis->resetStat();

/* 服务器异步保存数据到硬盘,等待操作完成

* @return bool 成功返回true,失败返回false,如果保存已经在运行,则返回false

*/

$redis->save();

/* 改变从服务器

* 可填 host(string)、port(int)或者不填

* @return bool 成功返回true,失败返回false

*/

$redis->slaveof(‘10.0.1.7‘, 6379);

$redis->slaveof();

/* 返回服务器时间

* @return assoc_array 时间戳和微秒数

*/

$redis->time();

/* 访问redis慢日记

* @param string operation “GET”,“LEN”,“RESET”

* @return “GET“返回特定数目的慢查询,”RESET“重置慢查询,”LEN“返回慢查询条目数

*/

$redis->slowlog(‘get‘, 10);

$redis->slowlog(‘get‘);

$redis->slowlog(‘reset‘);

/* 通过key获取对应的value

* @param string or bool

* @return string or bool 如果key不存在,返回false,否则返回value

*/

$redis->get(‘key‘);

/* 设置key-value

* @param key

* @param value

* @param timeout or option_array,过时时间或者选项数组,如果参数为整数,则调用SETEX,如果传一个数组,且redis 大于 2.6.12,则作为扩展选项数组

* @return bool 如果命令成功,返回true

*/

$redis->set(‘key‘, ‘value‘);

$redis->set(‘key‘,‘value‘, 10);

// Will set the key, if it doesn‘t exist, with a ttl of 10 seconds

$redis->set(‘key‘, ‘value‘, Array(‘nx‘, ‘ex‘=>10));

// Will set a key, if it does exist, with a ttl of 1000 miliseconds

$redis->set(‘key‘, ‘value‘, Array(‘xx‘, ‘px‘=>1000));

/* 设置key-value和 改key的ttl(生存时间)

* @param string key

* @param int ttl 单位为分钟

* @param string value

* @return bool 成功返回true

*/

$redis->setex(‘key‘, 3600, ‘value‘); // sets key → value, with 1h TTL.

/* 设置key-value和 改key的ttl(生存时间)

* @param string key

* @param int ttl 单位为毫秒

* @param string value

* @return bool 成功返回true

*/

$redis->psetex(‘key‘, 100, ‘value‘); // sets key → value, with 0.1 sec TTL.

/* 当key不存在,插入value,否则不操作

* @param key

* @param value

* @return bool 成功返回true,失败返回false,如果存在key也返回false

*/

$redis->setnx(‘key‘, ‘value‘);

/* 移除key

* @param key_array

* @return int 删除key的个数

*/

$redis->set(‘key1‘, ‘val1‘);

$redis->set(‘key2‘, ‘val2‘);

$redis->set(‘key3‘, ‘val3‘);

$redis->set(‘key4‘, ‘val4‘);

$redis->delete(array(‘key3‘, ‘key4‘)); //return 2

/* 判断key是否存在

* @param key

* @return bool 存在返回true,否则返回false

*/

$redis->exists(‘key‘);

/* 使key对应的value自增1

* @param key

* @return 一个新value

*/

$redis->incr(‘key1‘);

/* 使key对应的value增value

* @param key

* @param int value 增量

* @return 一个新value

*/

$redis->incrBy(‘key1‘,10);

/* 使key对应的value增value

* @param key

* @param float value 增量

* @return 一个新value

*/

$redis->incrByFloat(‘key1‘,1.3);

/* 使key对应的value自减1

* @param key

* @return 一个新value

*/

$redis->decr(‘key1‘);

/* 使key对应的value减value

* @param key

* @param int value

* @return 一个新value

*/

$redis->decrBy(‘key1‘,10);

标签:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值