php Session存储到Redis的方法

yipeiwu_com6年前PHP代码库

当然要写先安装php的扩展,可参考这篇文章:Redis及PHP扩展安装
修改php.ini的设置

复制代码 代码如下:

session.save_handler = redis
session.save_path = “tcp://127.0.0.1:6379″
修改后重启php-fpm或nginx,phpinfo()

session redis
如果不想修改php.ini可这样

复制代码 代码如下:

ini_set(“session.save_handler”,”redis”);
ini_set(“session.save_path”,”tcp://127.0.0.1:6379″);

如果配置文件/etc/redis.conf里设置了连接密码requirepass保存session的时候会报错,save_path这样写 tcp://127.0.0.1:6379?auth=authpwd 即可。
有网友提到相对于文件存储的session,redis或者memcache存储session值会有并发一致性的问题,这块并没有细测过。
复制代码 代码如下:

<?php
//如果未修改php.ini下面两行注释去掉
//ini_set('session.save_handler', 'redis');
//ini_set('session.save_path', 'tcp://127.0.0.1:6379');
session_start();
$_SESSION['sessionid'] = 'this is session content!';
echo $_SESSION['sessionid'];
echo '<br/>';

$redis = new redis();
$redis->connect('127.0.0.1', 6379);
//redis用session_id作为key并且是以string的形式存储
echo $redis->get('PHPREDIS_SESSION:' . session_id());
 ?>
 

相关文章

PHP DB 数据库连接类定义与用法示例

本文实例讲述了PHP DB 数据库连接类定义与用法。分享给大家供大家参考,具体如下: 声明: 近期观看了一节 PHP 消息队列视频,对于讲师WiconWang提供的代码,在此分享一下,希...

PHP配置ZendOpcache插件加速

PHP配置ZendOpcache插件加速

php原版本情况: [root@www sbin]# php -v PHP 5.6.23 (cli) (built: Dec 7 2018 09:00:11) Copyright...

PHP文本文件操作类

PHP文本操作类, 封装处理,调用方便<?php    class CtbClass {   &nbs...

php设计模式 DAO(数据访问对象模式)

复制代码 代码如下: <?php /** * 数据访问对象(Data Access Object) 示例 * * @create_date: 2010-01-04 */ class...

php时区转换转换函数

复制代码 代码如下:/* * 时区转换 */function toTimeZone($src, $from_tz = 'America/Denver', $to_tz...