自己写了个Session过期时间设定

浏览:1370 发布日期:2016/03/03 分类:技术分享 关键字: Session
看到很多人在问Session过期时间无效
自己也是新人,在做练习项目时也遇到了这个问题
由于不懂也没有没有深入的去学习了解官方的SESSION expire使用
于是自己写了个RBAC方法
正确登陆后将登录时间戳写入session
然后设置过期时间
判断当前时间与登录时间差,大于设置时间则清空SESSION<?php
/**
 * Created by INIMV.
 * User: psl
 * Date: 2016/2/29
 * Time: 14:01
 */

/**
 * 后台公共控制器
 */

namespace Admin\Controller;
use Think\Controller;

class PublicController extends Controller{
    /**
     * 初始化
     */
    public function _initialize(){

        $loginstatus=session('admin');
        if($loginstatus){
            $expire='10';//设置session过期时间(秒)
            $usetime=time()-$loginstatus['start'];//从session生成到现在使用时间(秒)
            if($usetime>$expire){
                session('admin',null);
                redirect('/Admin/login');
            }
        }else{
            redirect('/Admin/login/');
        }
    }



}
然后后台文件extends PublicController就可以了
最佳答案
评论( 相关
后面还有条评论,点击查看>>