首页 > 代码库 > php-在php中使用memcache

php-在php中使用memcache

<?php
  phpinfo();
?>

查看电脑中的php是否已经安装memcache扩展。

如果没有:

(1)php的安装路径找到ext文件夹

我的是 C:\wamp\bin\php\php5.5.12\ext

将下载的php_memcache.all文件放进去

(2)在php.ini配置文件中,加

extension=php_memcache.dll

(3)重启服务器

我的出现了问题,参考的https://www.oschina.net/question/1254404_248665

用的php_memcache-3.0.8-5.5-ts-vc11-x86.zip

 

常用函数:

具体可以参考PHP手册 “LXXXIV. Memcache Functions” 这章。
  Memcache面向对象的常用接口包括:
  Memcache::connect -- 打开一个到Memcache的连接
  Memcache::pconnect -- 打开一个到Memcache的长连接
  Memcache::close -- 关闭一个Memcache的连接
  Memcache::set -- 保存数据到Memcache服务器上
  Memcache::get -- 提取一个保存在Memcache服务器上的数据
  Memcache::replace -- 替换一个已经存在Memcache服务器上的项目(功能类似Memcache::set)
  Memcache::delete -- 从Memcache服务器上删除一个保存的项目
  Memcache::flush -- 刷新所有Memcache服务器上保存的项目(类似于删除所有的保存的项目)
  Memcache::getStats -- 获取当前Memcache服务器运行的状态
  Memcache::addServer -- 分布式服务器添加一个服务器

 

<?php
  $mem=new Memcache;
  $mem->connect("localhost",11211);
  $mem->add("mystr","this is a Memcache test!",MEMCACHE_COMPRESSED,3600);
//  $mem->set("mystr","wwwwwwwwwwwwwwwwwww",MEMCACHE_COMPRESSED,3600);
  $str=$mem->get("mystr");
  echo "string:".$str."<br>";
  $mem->add("myarr",array("aaa","bbb","cccc","dddd"));
  print_r($mem->get("myarr"));
  echo ‘<br>‘;
  class Person{
    var $name="zhangsan";
    var $age=10;
  }
  $mem->add("myobj",new Person);
  var_dump($mem->get("myobj"));
  $mem->close();
?>

  

在php什么地方使用memcache

一、数据库读出来的数据(select)使用memcache处理

二、在会话控制session中使用

 

Memcache的安全(不让别人访问)

1、内网

2、设置防火墙

 

php-在php中使用memcache