Redis 初次尝试
第一次接触redis,也不知道要写些什么。就玩了下将redis列表中的数据存入mysql数据库中。
首先有三个文件:
redis.php 添加数据进redis;
insert_class.php 将数据插入数据库;
inert.php 调用insert_class.php;
具体代码如下:
//redis.php
<?php
//连接本地的 Redis 服务
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
$info = array(
"username"=>"abc",
"password"=>"123",
"content"=>"aaaabbbbcccddd"
);
//将数组转化为json存储
$list = json_encode($info);
//lpushx 添加字符串元素
$redis->lpush('webo_list',$list);
$redis->close();
print_r($list);
//indert_class.php
<?php
class SaveData
{
public function save($username="",$password="",$content=""){
$db = new mysqli('localhost','root','','redis');
$sql = "INSERT INTO user(username,password,content) VALUES('$username','$password','$content')";
$db->query('SET NAMES UTF8');
if ($db->query($sql)){
echo '1111';
}else{
echo '222';
}
}
}
//insert.php
<?php
include "insert_class.php";
$save = new SaveData();
$redis = new Redis();
$redis->connect('127.0.0.1',6379);
//返回列表的大小。如果列表不存在返回0,不是列表返回false
if ($redis->lsize('webo_list')) {
//删除list头部并返回删除数据
$data = $redis->rPop('webo_list');
$data = json_decode($data);
$save->save($data->username,$data->password,$data->content);
}
$redis->close();
print_r($data);
以后可以在此基础上扩展批数据处理。