Jquery中文网 www.jquerycn.cn
Jquery中文网 >  脚本编程  >  php  >  正文 php将session保存在memcached中的方法

php将session保存在memcached中的方法

发布时间:2016-12-03   编辑:www.jquerycn.cn
jquery中文网为您提供php将session保存在memcached中的方法等资源,欢迎您收藏本站,我们将为您提供最新的php将session保存在memcached中的方法资源
session是php中一个服务器端超级全局变量而memcache是缓存应用,下面我来把它们整合起来把session存放在memcache中,下面我们一起来看如何实现的吧。

1.首先安装memcached或者memcache软件
参考:wamp 安装 memcache/memcached详细说明
2.安装php_memcache.dll扩展
3.设置session保存在memcached

方法一:

修改php.ini文件

<table width="620" align="center" border="0" cellpadding="1" cellspacing="1" style="background:#FB7"> <tr> <td width="464" height="27" bgcolor="#FFE7CE"> 代码如下</td> <td width="109" align="center" bgcolor="#FFE7CE" style="cursor:pointer;" onclick="doCopy('copy9198')">复制代码</td> </tr> <tr> <td height="auto" colspan="2" valign="top" bgcolor="#FFFFFF" style="padding:10px;" class="copyclass" id=copy9198>

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

方法二:

程序中动态设置

<table width="620" align="center" border="0" cellpadding="1" cellspacing="1" style="background:#FB7"> <tr> <td width="464" height="27" bgcolor="#FFE7CE"> 代码如下</td> <td width="109" align="center" bgcolor="#FFE7CE" style="cursor:pointer;" onclick="doCopy('copy4121')">复制代码</td> </tr> <tr> <td height="auto" colspan="2" valign="top" bgcolor="#FFFFFF" style="padding:10px;" class="copyclass" id=copy4121>

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

测试程序

1.session.php

<table width="620" align="center" border="0" cellpadding="1" cellspacing="1" style="background:#FB7"> <tr> <td width="464" height="27" bgcolor="#FFE7CE"> 代码如下</td> <td width="109" align="center" bgcolor="#FFE7CE" style="cursor:pointer;" onclick="doCopy('copy9860')">复制代码</td> </tr> <tr> <td height="auto" colspan="2" valign="top" bgcolor="#FFFFFF" style="padding:10px;" class="copyclass" id=copy9860>

<?php
ini_set("session.save_handler", "memcache");
ini_set("session.save_path", "tcp://127.0.0.1:11211");

session_start();
if (!isset($_SESSION['username'])) {
 $_SESSION['username'] = 'phpff.com';
}

print session_id();//5877fbfcaea379ada0cc0dbba80615a6

?>

2.test.php

<table width="620" align="center" border="0" cellpadding="1" cellspacing="1" style="background:#FB7"> <tr> <td width="464" height="27" bgcolor="#FFE7CE"> 代码如下</td> <td width="109" align="center" bgcolor="#FFE7CE" style="cursor:pointer;" onclick="doCopy('copy8132')">复制代码</td> </tr> <tr> <td height="auto" colspan="2" valign="top" bgcolor="#FFFFFF" style="padding:10px;" class="copyclass" id=copy8132>

<?php
// memcache test code
$memcache = new Memcache; //创建一个memcache对象
$memcache->connect('127.0.0.1', 11211) or die ("Could not connect"); //连接Memcached服务器 

print_r($memcache->get('5d3d79d7500f5836033e9019b3eefc6f'));//username|s:9:"phpff.com";

?>

您可能感兴趣的文章:
memcached启动和关闭的方法
MEMCACHE做为PHP的SESSION HANDLER
php中Session工作原理与用法详解
PHP session实现跨子域的几种办法
php将session保存在memcached中的方法
有关php中session的疑惑
session 的工作原理与session用法
Window 下安装 Memcached
Memcache与MySQL同是使用的配置详解
将Session保存到Memcache的实现方法及代码

[关闭]