企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
### 利用反射感知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); ```