<?php
header('content-type:text/html;charset=utf-8');
class RedisSessionHandler{
    public $ttl;             //失效时间
    protected $db;          //操作存储介质对象

    /**
     * 构造方法;
     * 注入操作介质对象,设置失效时间;
     */
    public function __construct($db,$time=1440) {
        $this->db = $db;
        $this->ttl =  $time;
    }

    /**
     * 打开方法。
     */
    function _open()
    {
        //
    }

    /**
     * 关闭方法。
     * 清空操作存储介质对象。
     */
    function _close()
    {
        $this->db = null;
        unset($this->db);
    }

    /**
     * 读取数据方法。
     */
    function _read($id)
    {
        //根据 session_id get方式获取
        $sessData = $this->db->get($id);
        //重新更新失效时间。
        $this -> db -> set( $id , $this->db->get($id), 0 , $this->ttl);
        //返回获取信息。
        return $sessData;
    }

    /**
     * 写入方法。
     */
    function _write($id, $data)
    {
        //存在即修改,不存在写入
        $this -> db -> set( $id ,$data, 0 , $this->ttl);
    }

    /**
     * 删除方法。
     */
    function _destroy($id)
    {
        $this->db->del($id);
    }

    /**
     * 垃圾回收机制。
     */
    function _clean($max)
    {
        //
    }
}

//实例化操作 memcache 对象
$mem = new \Memcache();
//链接 memcache 服务器
$mem-> connect('127.0.0.1',11211);
//实例化自定义对象
$sessHandler = new RedisSessionHandler($mem);
//更改 session 存储方式。
session_set_save_handler(
    array($sessHandler, '_open'),
    array($sessHandler, '_close'),
    array($sessHandler, '_read'),
    array($sessHandler, '_write'),
    array($sessHandler, '_destroy'),
    array($sessHandler, '_clean')
);

//操作 session ,验证定义的类有没有错。
session_start();
//$_SESSION['name']='i am superman';
//var_dump(isset($_SESSION["names"]));
echo $_SESSION["name"];
?>

session 存入 memcahce的更多相关文章

  1. session 存入数据库 php

     session 机制 1.php中session的生成机制 session是保存在服务器的,当我们在代码中调用session_start();时,PHP会同时往SESSION的存放目录(默认为/tm ...

  2. MVC4.0中项目发布遇到IE11时session存入URL中,导致记不住密码的问题

    ///MVC4.0中项目发布遇到IE11时session存入URL中,导致记不住密码的问题,在webconfig中配置<system.web><authentication mode ...

  3. 将session存入数据库,memcache的方法

    //存入数据库 <?phpif(!$con = mysql_connect('localhost','root','123456')){    die('连接数据库失败');}$link = m ...

  4. python-Web-django-商城-session存入数据库

    utils: '''用户session''' import datetime from app01.models import Sessions ''' iii = request.session.s ...

  5. 让php Session 存入 redis 配置方法

    首先要做的就是安装redis 安装方法:http://redis.io/download Installation Download, extract and compile Redis with: ...

  6. session存入redis

    Session信息入Redis Session简介 session,中文经常翻译为会话,其本来的含义是 指有始有终的一系列动作/消息,比如打电话时从拿起电话拨号到挂断电话这中间的一系列过程可以称之为一 ...

  7. 为什么要把session存入数据库

    比如网易的通行证,一个session能进入很多的网易下的网站

  8. php session存入redis

    php的会话默认以文件的形式存在,可以配知道NOSQL中,既可以提高访问速度又能好好的实现回话共享,在后期做负载均衡时实现多台服务器session 同步也是比较方便: 一:在php配置文件中改 修改p ...

  9. 将php中session存入redis中

    PHP 的会话默认是以文件的形式存在的,可以配置到 Redis 中,即提高了访问速度,又能很好地实现会话共享! 配置方式如下: 方法一:修改 php.ini 的设置 session.save_hand ...

随机推荐

  1. 自定义pulltoRefresh的刷新和加载动画

    一:定义刷新动画的layout 共同的设置方法是 1:getDefaultDrawableResId() 2:refreshingImpl() 正在刷新时的回调方法,可以设置开始动画 3:resetI ...

  2. Ubuntu 14.04下安装CUDA8.0

    配置环境如下: 系统:Ubuntu14.04 64bit 显卡:Nvidia K620M 显卡驱动:Nvidia-Linux-x86_64-375.66.run CUDA8.0 +  cudnn8.0 ...

  3. JDOM,dom4j方式解析XML

    <?xml version="1.0" encoding="UTF-8"?> <dataSources> <!-- 定义MySQL ...

  4. css兼容性问题总结

    DIV+CSS设计IE6.IE7.FF 兼容性 DIV+CSS网页布局这是一种趋势,我也开始顺应这股趋势了,不过在使用DIV+CSS网站设计的时候,应该注意css样式兼容不同浏览器问题,特别是对完全使 ...

  5. django框架-DRF视图中的request和response

    1.Request 相对于django框架,DRF工程的request类则是继承自HttpRequest类,Rest framework提供了parser解释器,用来解释请求中的content_typ ...

  6. (四)React高级内容

    1. React developertools安装及使用 2. PropTypes与DefaultProps 讲一下PropTypes, 先拿TodoItem来说: 从几种类型中选: 3 props ...

  7. spring中IOC的简单使用

    spring的ioc主要就是依赖注入,有基于构造器的依赖注入还有通过设值注入,这里我只简单的实现设值注入的方法,通过spring的依赖管理,我们可以很方便的了解各层之间的依赖关系,降低了各层之间的耦合 ...

  8. 紫书 习题8-5 UVa 177 (找规律)

    参考了https://blog.csdn.net/weizhuwyzc000/article/details/47038989 我一开始看了很久, 拿纸折了很久, 还是折不出题目那样..一脸懵逼 后来 ...

  9. 没用私服,自己安装下本地jar包,制作坐标

    没用私服的话,自己安装下本地jar包吧.执行下面命令即可. -Dfile 代表jar存在路径.mvn install:install-file -DgroupId=alipay -DartifactI ...

  10. [javase学习笔记]-7.6 thiskeyword的原理

    这一节我们来讲一个keyword.就是thiskeyword. 我们还是通过样例来看吧: class Person { private String name; private int age; Pe ...