话不多说,上代码,自己看注释
<?php header("Content-type: text/html; charset=utf-8"); $mem = new Memcache(); $mem->connect('127.0.0.1',11211);//连接memcached $id = 3; $sql = "SELECT * FROM junyi_user WHERE id='$id'"; $key = md5($sql); //数据库查询是否已经缓存到memcahced服务器中 if(!($datas = $mem->get($key))) { echo 'mysql<br />'; //如果在memcached中没获取过数据,连mysql获取 mysql_connect('127.0.0.1','root','root');//连接数据库 mysql_select_db('junyiadmin');//默认连接的数据库 $result = mysql_query($sql);//执行sql //循环获取结果集里的数据组成数组 //mysql_fetch_assoc()获取结果集里的一行并返回,如果没有了则返回false while($row = mysql_fetch_assoc($result)) { $datas[] = $row; } //再把mysql获取的数据保存到memcached中,供下次使用 //flag,设置存储方式是否使用MEMCACHE_COMPRESSED指定对值进行压缩 //设置储存的时间,以秒为单位 var_dump($mem->set($key,$datas,false,1000)); $mem->close();//释放资源 print_r($datas); } else { var_dump($mem->get($key)); $mem->delete($key); $mem->close(); echo 'memcached缓存的数据<br />'; }