通过php操作redis
redis在php里边就是一个操作类,名称为“Redis”
据使用redis,就是创建一个对象,对象调用
方法
即可,
Redis类的各种
方法的名称
与 redis大部分
指令的名称
一致,
方法的
参数
就 是指令的
参数
。
例如:
> set key value
php: $obj->set(key,value);
/usr/local/http2/htdocs/redis.php
PHP 使用 Redis
安装
PHP安装redis扩展
以下操作需要在下载的 phpredis 目录中完成:
$ wget https://github.com/phpredis/phpredis/archive/2.2.4.tar.gz$ cd phpredis-2.2.7 # 进入 phpredis 目录$ /usr/local/php/bin/phpize # php安装后的路径$ ./configure --with-php-config=/usr/local/php/bin/php-config$ make && make install
如果你是 PHP7 版本,则需要下载指定分支:
git clone -b php7 https://github.com/phpredis/phpredis.git
修改php.ini文件
vi /usr/local/php/lib/php.ini
增加如下内容:
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-zts-20090626"extension=redis.so
安装完成后重启php-fpm 或 apache。查看phpinfo信息,就能看到redis扩展。
连接到 redis 服务
<?php //连接本地的 Redis 服务 $redis = new Redis(); $redis->connect('127.0.0.1', 6379); echo "Connection to server sucessfully"; //查看服务是否运行 echo "Server is running: " . $redis->ping();?>
执行脚本,输出结果为:
Connection to server sucessfullyServer is running: PONG
Redis PHP String(字符串) 实例
<?php //连接本地的 Redis 服务 $redis = new Redis(); $redis->connect('127.0.0.1', 6379); echo "Connection to server sucessfully"; //设置 redis 字符串数据 $redis->set("tutorial-name", "Redis tutorial"); // 获取存储的数据并输出 echo "Stored string in redis:: " . $redis->get("tutorial-name");?>
执行脚本,输出结果为:
Connection to server sucessfullyStored string in redis:: Redis tutorial
Redis PHP List(列表) 实例
<?php //连接本地的 Redis 服务 $redis = new Redis(); $redis->connect('127.0.0.1', 6379); echo "Connection to server sucessfully"; //存储数据到列表中 $redis->lpush("tutorial-list", "Redis"); $redis->lpush("tutorial-list", "Mongodb"); $redis->lpush("tutorial-list", "Mysql"); // 获取存储的数据并输出 $arList = $redis->lrange("tutorial-list", 0 ,5); echo "Stored string in redis"; print_r($arList);?>
执行脚本,输出结果为:
Connection to server sucessfullyStored string in redisRedisMongodbMysql
Redis PHP Keys 实例
<?php //连接本地的 Redis 服务 $redis = new Redis(); $redis->connect('127.0.0.1', 6379); echo "Connection to server sucessfully"; // 获取数据并输出 $arList = $redis->keys("*"); echo "Stored keys in redis:: "; print_r($arList);?>
执行脚本,输出结果为:
Connection to server sucessfullyStored string in redis::tutorial-nametutorial-list
php中redis的可操作方法有哪些
利用“反射Reflection”获得一个类中所有的可操作方法。
反射在oop面向对象里边的一点作用:
① 可以感知类中全部的可以操作方法
② 可以感知类的方法是否是public、protected、private、finall
总结:
1. Sort set排序集合类型
每个元素:权/值
场合:获得最热门帖子信息等
2. 持久化操作
a)
快照:每次备份全部数据
b)
AOF:备份每个写指令
3. 主从模式
4. 给php安装redis扩展
a)
安装软件phpredis、autoconf
5. php操作redis
redis在php中就是一个类Redis