解决ThinkPHP6设置session不生效的问题 - exit/die以前的session写入都无效的问题
Posted Rudon滨海渔村
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决ThinkPHP6设置session不生效的问题 - exit/die以前的session写入都无效的问题相关的知识,希望对你有一定的参考价值。
效果图
代码
<?php
namespace app\\controller;
use app\\BaseController;
use think\\facade\\Session;
class Myapi extends BaseController
public function checkLogin ()
$user = 'Jack';
$pwd = 'Lucy88';
// 在exit或者die前写入session
Session::set('username', $user);
// 马上执行写入
\\think\\facade\\Session::save();
// 读取session
$data_from_session = Session::get('username');
$res = array(
'code' => 200,
'msg' => '',
'data' => $data_from_session
);
echo json_encode($res);
die();
相关
官方文档中提到了:新版本不支持操作原生 $_SESSION 数组和所有 session_开头的函数,只能通过 Session 类(或者助手函数)来操作。会话数据统一在当前请求结束的时候统一写入 所以不要在 session 写入操作之后执行 exit 等中断操作,否则会导致 Session 数据写入失败。
php session不生效_解决ThinkPHP6设置session不生效的问题
https://blog.csdn.net/weixin_31082779/article/details/112955688
tp6设置session后使用exit语句,session保存不上
https://www.thinkphp.cn/topic/63572.html
关于tp6在返回方法中加入exit或die导致session不能存储问题
https://www.thinkphp.cn/topic/64360.html
tp6安装...无法保存session
https://blog.csdn.net/qq_41900118/article/details/113969727
模板默认是使用htmlentities过滤掉数据中的html的,如果想要直接输出html则加上raw
如果你不需要转义(例如你需要输出html表格等内容),可以使用:
$test ------> <?php echo htmlentities($test);?>
//raw 取消html过滤
$test|raw ------> <?php echo $test;?>
封面
以上是关于解决ThinkPHP6设置session不生效的问题 - exit/die以前的session写入都无效的问题的主要内容,如果未能解决你的问题,请参考以下文章
thinkphp session 过期时间配置不生效是怎么回事?