废话少说,直接上代码
<?php
//实例化memcache类
$mem = new memcache();
//连接memcache
$mem->connect('localhost','11211');
/**
判断缓存中是否有数据
如果有,就读取,没有,在查询时候,就把查询的数据存入memcache中
*/
//获取缓存数据
$data = $mem->get('data');
//判断是否有数据
if(!data){
try {
$dsn = 'mysql:host=localhost;dbname=slf_test';
$pdo = new PDO($dsn, 'root', '');
$pdo->exec('SET NAMES utf8');
//准备预处理对象
$stmt = $pdo->prepare("SELECT id,name,age,sex FROM user WHERE id<?");
//绑定参数
$stmt->bindParam(1, $id, PDO::PARAM_INT);
//获取id值
$id = 10;
//执行操作
$stmt->execute();
//判断结果
$ss = $stmt->fetchAll(PDO::FETCH_ASSOC);
var_dump($ss);
//添加缓存
$mem->add('data', $ss);
} catch (PDOException $e) {
//输出错误
echo $e->getMessage();
}
}else{
echo 'memcache缓存';
var_dump($data);
}
?>
使用PDO连接数据库,防止sql注入