文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>转载:Memcache 在PHP中的使用详解

转载:Memcache 在PHP中的使用详解

时间:2010-12-01  来源:es_liu



add($key, $value, $expiry);
$key: 唯一标识, 用于区分写入的数据
$value: 要写入的数据
$expiry: 过期时间, 默认为永远有效
用途: 将数据写入到memcache中


get($key)
$key: 通过写入时的$key获取对应的数据
用途: 获取memcache中的数据


replace($key, $value, $expiry)
该方法参数与add方法的参数相同
用途也很明显就是替换数据


delete($key, $time = 0)
$key: 唯一标识
$time: 延迟时间
用途: 删除memcache中存储的数据


下面来看看具体用法: 




复制代码
  1. <?php
  2. $m = new Memcache();
  3. $m->connect('localhost', 11211);

  4. $data = 'content'; //需要缓存的数据
  5. $m->add('mykey', $data);echo $m->get('mykey'); // 输出 content

  6. $m->replace('mykey', 'data'); //替换内容为dataecho $m->get('mykey');//输出 data

  7. $m->delete('mykey'); //删除echo $m->get('mykey'); //输出 false 因为已经删掉了哦..


是 不是很简单..   在实际应用中,通常会把数据库查询的结果集保存到 memcached 中,下次访问时直接从 memcached 中获取,而不再做数据库查询操作,这样可以在很大程度上减轻数据库的负担。通常会将 SQL 语句 md5() 之后的值作为唯一标识符 key。下边是一个利用 memcached 来缓存数据库查询结果集的示例


复制代码
  1. <?php
  2. //连接memcache
  3. $m = new Memcache();
  4. $m->connect('localhost', 11211);

  5. //连接数据库的我就不写了.

  6. $sql  = 'SELECT * FROM users';
  7. $key  = md5($sql);   //md5 SQL命令 作为 memcache的唯一标识符
  8. $rows = $m->get($key); //先重memcache获取数据

  9. if (!$rows) {
  10.     //如果$rows为false那么就是没有数据咯, 那么就写入数据
  11.     $res  = mysql_query($sql);
  12.     $rows = array();
  13.     while ($row = mysql_fetch_array($res)) {
  14.         $rows[] = $row;
  15.     }
  16.     $m->add($key, $rows); //这里写入重数据库中获取的数据, 可以设置缓存时间, 具体时间设置多少, 根据自己需求吧.
  17. }

  18. var_dump($rows); //打印出数据

  19. //上面第一次运行程序时, 因为还没有缓存数据, 所以会读取一次数据库, 当再次访问程序时, 就直接重memcache获取了.


相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载