12月62021
thinkphp6 session 为什么会失效
代码如下:
namespace app\controller\index;
use app\BaseController;
use think\facade\Session;
class Test extends BaseController {
public function index(){
$flag = Session::set('key','13213165464');
dd($flag);
}
public function show(){
dd(Session::get('key'));
}
}
为什么取不到session的值呢,评论区有人说tp6的session 和 php 的session 没有关系,这句话说到了重点,
tp6的框架禁用了超全局变量$_SESSION ,自己写了一套类似 session 的 机制,类似于缓存吧,有不同的
存储驱动,但我使用dd()打印的时候,框架并没有吧我设置的session值写到文件中去,只有使用return 返回
的时候 才能写入到缓存文件.
修改代码:
public function index(){
$flag = Session::set('key','13213165464');
return $flag;
}
public function show(){
return Session::get('key');
}
这样就可以成功使用session了。
坑多坑多就是坑多,先检查文件夹权限,再检查程序
发表评论
木有头像就木JJ啦!还木有头像吗?点这里申请属于你的个性Gravatar头像吧!