luyucheng

方法一:
找到配置文件php.ini,修改为下面内容,保存并重启服务

session.save_handler = redis
session.save_path = "tcp://127.0.0.1:6379"

方法二:
直接在代码中加入以下内容:

ini_set("session.save_handler", "redis");
ini_set("session.save_path", "tcp://127.0.0.1:6379");

注:如果配置文件redis.conf里设置了连接密码requirepass,save_path需要这样写tcp://127.0.0.1:6379?auth=authpwd ,否则保存session的时候会报错。

测试:

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

session_start();

//存入session
$_SESSION[\'class\'] = array(\'name\' => \'toefl\', \'num\' => 8);

//连接redis
$redis = new redis();
$redis->connect(\'127.0.0.1\', 6379);

//检查session_id
echo \'session_id:\' . session_id() . \'<br/>\';

//redis存入的session(redis用session_id作为key,以string的形式存储)
echo \'redis_session:\' . $redis->get(\'PHPREDIS_SESSION:\' . session_id()) . \'<br/>\';

//php获取session值
echo \'php_session:\' . json_encode($_SESSION[\'class\']);

 

分类:

技术点:

相关文章: