php操作memcache:
1.连接
$mem=new Memcache;
$mem->connect(“localhost”,“11211”);
**
2.增和改
$mem->set(‘username’,‘123’);
**
<?php
$memcache = new Memcache; //创建一个memcache对象
$memcache->connect('localhost', 11211); //连接Memcached服务器
$b=$memcache->set('name1', 'test123'); //设置一个变量到内存中,名称是key 值是test
$c=$memcache->get('name1');
echo $c;
?>
memcache设置有效期
<?php
$memcache = new Memcache; //创建一个memcache对象
$memcache->connect('localhost', 11211); //连接Memcached服务器
$memcache->set('age3','50',0,10);
?>
**
3.删(delete)
$mem->delete(‘username’);
**
<?php
$memcache = new Memcache; //创建一个memcache对象
$memcache->connect('localhost', 11211); //连接Memcached服务器
if($memcache->delete('name1')){
echo "删除成功!";
}
?>
4.查(get)
$mem->get(‘username’);
**
<?php
$memcache = new Memcache; //创建一个memcache对象
$memcache->connect('localhost', 11211); //连接Memcached服务器
$b=$memcache->set('name1', 'test123'); //设置一个变量到内存中,名称是key 值是test
$c=$memcache->get('name1');
echo $c;
?>
5.清空
$mem->flush();
**
<?php
$memcache = new Memcache; //创建一个memcache对象
$memcache->connect('localhost', 11211); //连接Memcached服务器
if($memcache->flush()){
echo "清空成功!";
}
?>
6.状态
$mem->getStats();
**
<?php
$memcache = new Memcache; //创建一个memcache对象
$memcache->connect('localhost', 11211); //连接Memcached服务器
$arr=$memcache->getStats();
echo '<pre>';
print_r($arr);
echo '</pre>';
?>
[实例: 用户查看]
index.php
<?php
$memcache = new Memcache; //创建一个memcache对象
$memcache->connect('localhost', 11211); //连接Memcached服务器
if(!$rows=$memcache->get('rows')){
// 缓存中无rows,需要从mysql中重新获取新数据
// 数据库数据
$servername = "localhost";
$username = "root";
$password = "123";
$dbname='myweb';
$pdo= new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
$pdo->exec('set names utf8');
$sql="select * from user";
$smt=$pdo->prepare($sql);
$smt->execute();
$rows=$smt->fetchAll(PDO::FETCH_ASSOC);
// 把rows存入memcache缓存
$memcache->set('rows',$rows);
//来自数据库
$s=1;
}else{
//来自缓存
$s=0;
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>查看用户</title>
<link rel="stylesheet" href="/bs/css/bootstrap.css">
<script src='/bs/js/jquery.js'></script>
<script src='/bs/js/bootstrap.js'></script>
</head>
<body>
<div class="container">
<h1 class="page-header">查看用户:
<a href="clear.php" class="btn btn-success">清除缓存</a>
</h1>
<table class='table table-striped table-bordered table-hover'>
<tr>
<th>编号</th>
<th>用户名</th>
<th>密码</th>
</tr>
<?php
foreach($rows as $row){
echo "<tr>";
echo "<td>{$row['id']}</td>";
echo "<td>{$row['username']}</td>";
echo "<td>{$row['age']}</td>";
echo "</tr>";
}
?>
</table>
<?php
if($s){
?>
<div class="alert alert-danger">
<p>页面数据全部来自Mysql数据库!</p>
</div>
<?php
}else{
?>
<div class="alert alert-success">
<p>页面数据全部来自Memcache缓存!</p>
</div>
<?php
}
?>
</div>
</body>
</html>
clear.php
<?php
$memcache = new Memcache; //创建一个memcache对象
$memcache->connect('localhost', 11211); //连接Memcached服务器
if($memcache->flush()){
echo "<script>location='index.php'</script>";
}
?>