php使用MemCache查询数据库

原创
2016-07-29 09:14:30 723浏览
header("Content-type:text/html;charset=utf-8");
/**
*用于执行所有结果集的sql语句,并将结果集缓存到memcached服务器中
*@param string $sql 有结果集的查询语句SQL
* @param object $memcache Memcache类的对象
*@return $date 返回结果集的数据
*/
function select($sql,Memcache $memcache){
/* md5 sql命令 作为memcache的唯一标识符*/
$key=md5($sql);
/* 先从memcached服务器总获取数据 */
$data=$memcache->get($key);
/* 如果没有数据就要从数据库中获取*/
if(!$data){
try{
$pdo=new PDO("mysql:host=localhost;dbname=test","root","root");
}catch(PDOException $e){
die("连接失败:".$e->getMessage());
}
$pdo->query("set names utf8");//防止乱码
$stmt=$pdo->prepare($sql);
$stmt->execute();
$data=$stmt->fetchAll(PDO::FETCH_ASSOC);
var_dump($data);//测试
$memcache->add($key,$data,MEMCACHE_COMPRESSED,0);
}
return $data;
}
$mem=new Memcache;
$mem->connect("localhost","11211");
$data=select("select * from book",$mem);
//echo "
";
print_r($data);
//echo "
";

以上就介绍了php使用MemCache查询数据库,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。