### 利用反射感知redis类中可以操作的成员方法
```
$method = new ReflectionClass('Redis'); //通过Redis类实例化一个反射类对象
$rst = $method->getMethods();//获得Redis类中所有的成员方法
var_dump($str);
#连接redis
$redis = new Redis();
$redis->connect('127.0.0.1', '6379');
$redis->mset(array('addr1'=>'beijing', 'add2' => 'shanghai'));
$result = $redis->mget(array('addr1','add2'));
var_dump($result);
```
### 利用redis队列实现秒杀
首先把要秒杀的商品加入到队列中,模拟10件商品
```
$good_num = 10;
for($i=0; $i<$good_num; $i++) {
$redis->lpush('good_store', 1);
}
var_dump($redis->llen('good_store'));
```
给队列设置过期时间(20秒):
```
$redis->setTimeout('good_store',20);
```
实现秒杀:
在有效时间内,将列队从头部弹出(队列是一个一个出,不必担心会出现错误)
```
$count = $redis->lpop('good_store');
if(!$count) {
echo '秒杀结束';
return;
}
var_dump('抢购成功');
```
### redis缓存服务
```
$pdo = new PDO('mysql:host=localhost;dbname=douphp','***','******');
$sql = 'select * from dou_article';
$smt = $pdo->query($sql);
$list = $smt->fetchAll(PDO::FETCH_ASSOC);
$redis = new Redis();
$redis->connect('127.0.0.1', '6379');
$res = ['name' => 'john', 'age' => 19, 'sex' => 'man'];
$redis->set('reds', json_encode($list));
$data = json_decode($redis->get('reds'));
var_dump($data);
```