php将session保存在memcached中的方法

session是php中一个服务器端超级全局变量而memcache是缓存应用,下面我来把它们整合起来把session存放在memcache中,下面我们一起来看如何实现的吧.

1.首先安装memcached或者memcache软件

参考:wamp 安装 memcache/memcached详细说明

2.安装php_memcache.dll扩展

3.设置session保存在memcached

方法一,修改php.ini文件,代码如下:

session.save_handler = memcache

session.save_path = "tcp://127.0.0.1:11211"

方法二,程序中动态设置,代码如下:

ini_set("session.save_handler", "memcache");

ini_set("session.save_path", "tcp://127.0.0.1:11211");

测试程序

1.session.php,代码如下:

  1. <?php
  2. ini_set("session.save_handler", "memcache");
  3. ini_set("session.save_path", "tcp://127.0.0.1:11211");
  4. session_start();
  5. if (!isset($_SESSION['username'])) {
  6. $_SESSION['username'] = 'phpff.com';
  7. }
  8. print session_id();//5877fbfcaea379ada0cc0dbba80615a6
  9. ?>

2.test.php,代码如下:

  1. <?php
  2. // memcache test code
  3. $memcache = new Memcache; //创建一个memcache对象
  4. $memcache->connect('127.0.0.1', 11211) or die ("Could not connect"); //连接Memcached服务器
  5. //开源代码phpfensi.com
  6. print_r($memcache->get('5d3d79d7500f5836033e9019b3eefc6f'));//username|s:9:"phpff.com";
  7. ?>