Home  >  Article  >  Backend Development  >  memcache储存php session

memcache储存php session

WBOY
WBOYOriginal
2016-06-13 12:53:39653browse

memcache存储php session

设置session用memcache来存储?

方法I: 在 php.ini 中全局设置?

Php.ini代码??收藏代码
  1. session.save_handler?=?memcache??
  2. session.save_path?=?"tcp://127.0.0.1:11211"??


方法II: 某个目录下的 .htaccess?

Php.ini代码??收藏代码
  1. php_value?session.save_handler?"memcache"??
  2. php_value?session.save_path??"tcp://127.0.0.1:11211"??



方法III: 再或者在某个一个应用中?

Php代码??收藏代码
  1. ini_set("session.save_handler",?"memcache");??
  2. ini_set("session.save_path",?"tcp://127.0.0.1:11211");??



使用多个 memcached server 时用逗号","隔开,并且和 Memcache::addServer() 文档中说明的一样,可以带额外的参数"persistent"、"weight"、"timeout"、"retry_interval" 等等,类似这样的:"tcp://host1:port1?persistent=1&weight=2,tcp://host2:port2" 。?

如果安装的PECL是memcached(依赖libmemcached库的那个扩展),则配置应为?

Php代码??收藏代码
  1. ini_set("session.save_handler",?"memcached");?//?是memcached不是memcache??
  2. ini_set("session.save_path",?"127.0.0.1:11211");?//?不要tcp:[/b]??



代码例子(不依赖libmemcached库的那个)?

Php代码??收藏代码
  1. session_start();??
  2. if?(!isset($_SESSION['TEST']))?{??
  3. ????$_SESSION['TEST']?=?time();??
  4. }??
  5. ???
  6. $_SESSION['TEST3']?=?time();??
  7. ???
  8. print?$_SESSION['TEST'];??
  9. print?"

    "
    ;??
  10. print?$_SESSION['TEST3'];??
  11. print?"

    "
    ;??
  12. print?session_id();??
  13. ?>??


用 sessionid 去 memcached 里查询一下:?

Php代码??收藏代码
  1. $memcache?=?memcache_connect('localhost',?11211);??
  2. var_dump($memcache->get('19216821213c65cedec65b0883238c278eeb573e077'));??
  3. $memcache->set('aaaa',?'hello?everyone');??
  4. var_dump($memcache->get('aaaa'));??
  5. ?>??



会看到?
string(37) "TEST|i:1177556731;TEST3|i:1177556881;"?
这样的输出,证明 session 正常工作。

?

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn