有没有办法在 Laravel 中访问 PHP 本机会话变量?
Is there a way to access the PHP native session variable within Laravel?
我有一个处理身份验证并设置一些会话变量的遗留应用程序;我需要在 Laravel 应用程序中访问这些会话变量。我尝试启动一个会话并访问控制器中的一个变量——这没有用。我收到一个糟糕的错误 - 未定义的索引:名称
这是我尝试过的:
public function __construct()
{
session_start();
}
public function index()
{
//test output php (not Laravel) sessions
echo "TEST CONTROLLER ACCESSED!!\n\n";
print_r($_SESSION['name']);
}
我也在路由的闭包中尝试了同样的方法。都失败了。
有没有办法在 Laravel 中访问 PHP 本机会话变量?
编辑
我不明白我的问题被标记为重复。参考的答案是关于我得到的错误。它没有回答我的问题。我明白错误的含义,我需要知道为什么会话对 Laravel.
不可用
如果您需要任何其他信息,请告诉我。
编辑 2
$_SESSION['name'] 存在于旧版应用程序中,但未传递给 Laravel。这两个应用程序都在同一服务器和域上。如何追踪正在发生的事情?
我发布这篇文章是希望对其他人有所帮助。
事实证明,旧版应用使用了非标准 session.save_path
(我正在处理一个非常大的代码库。所以,这个事实并不像看起来那么明显)。
解决方案是将保存路径设置为 Laravel 中的相同位置。
ini_set('session.save_path', '/path/to/sessions/');
这必须在 session_start()
之前完成
查看有关 PHP 命令的信息 here。
我有一个处理身份验证并设置一些会话变量的遗留应用程序;我需要在 Laravel 应用程序中访问这些会话变量。我尝试启动一个会话并访问控制器中的一个变量——这没有用。我收到一个糟糕的错误 - 未定义的索引:名称
这是我尝试过的:
public function __construct()
{
session_start();
}
public function index()
{
//test output php (not Laravel) sessions
echo "TEST CONTROLLER ACCESSED!!\n\n";
print_r($_SESSION['name']);
}
我也在路由的闭包中尝试了同样的方法。都失败了。
有没有办法在 Laravel 中访问 PHP 本机会话变量?
编辑
我不明白我的问题被标记为重复。参考的答案是关于我得到的错误。它没有回答我的问题。我明白错误的含义,我需要知道为什么会话对 Laravel.
如果您需要任何其他信息,请告诉我。
编辑 2
$_SESSION['name'] 存在于旧版应用程序中,但未传递给 Laravel。这两个应用程序都在同一服务器和域上。如何追踪正在发生的事情?
我发布这篇文章是希望对其他人有所帮助。
事实证明,旧版应用使用了非标准 session.save_path (我正在处理一个非常大的代码库。所以,这个事实并不像看起来那么明显)。
解决方案是将保存路径设置为 Laravel 中的相同位置。
ini_set('session.save_path', '/path/to/sessions/');
这必须在 session_start()
查看有关 PHP 命令的信息 here。