ThinkPHP中:多个项目共享同一个session问题

使用ThinkPHP3.1.3版本的session时,多个项目同时调试会使得一维数组式的session不够用,导致在A项目登录后台后,在B项目就不用登录后台就可以进入后台操作了。

问题在于他们都调用同一个session文件sess_d55a5f55db022fb119fc38193c4cecac。我不知道怎么去定义这个文件的命名方式。但是,我找到了解决多个项目共享同一个session但又不相互冲突的方法。这个方法的原理就是,将session变为二维数组。具体操作是在配置文件中加上session前缀(命名方式最好是sess+项目名)

     //session前缀
'SESSION_PREFIX'=>'mysessA',

再以二维session使用

取值

$_SESSION[C('SESSION_PREFIX')]['uid'];

对应的退出登录

     public function loginOut(){
$_SESSION[C('SESSION_PREFIX')]=null;
$this->redirect(GROUP_NAME.'/Login/index');
}
上一篇:Redis学习一:Redis两种持久化机制


下一篇:NHibernate从入门到精通系列(3)——第一个NHibernate应用程序