在另一个PHP应用程序和Laravel之间共享会话数据

3phpmpom  于 2023-05-05  发布在  PHP
关注(0)|答案(3)|浏览(159)

我有两个域在同一托管一个是使用自定义PHP和另一个Laravel 5.4。我使用自定义PHP使用$_SESSIONsession变量中设置了一些值。现在登录后重定向到laravel。现在我的问题是如何在laravel中获得这个Session变量。

6yoyoihd

6yoyoihd1#

Laravel从Laravel 4.1开始就不使用原生PHP会话了。
我们不再使用Symfony的(因此也不再使用PHP的)会话处理工具,而是使用更简单、更易于维护的自定义解决方案
在Laravel中,你想使用Session:: facade或session() global helper来处理会话:

// Saving value.
session()->put('key', 'value');

// Gettinng value.
session('key');

因此您无法从另一个PHP应用程序访问会话数据,
但是,如果您使用相同的存储来管理两个应用程序的会话(RedisMemcached,共享会话文件夹......),并且您在两个应用程序中使用相同的APP_KEY(在.env文件中查看)和相同的cookie标识符(在config\session.php文件中查看),则可以从另一个Laravel应用程序访问会话。

uidvcgyl

uidvcgyl2#

可以使用session()辅助函数。或Session外观。
假设您想在会话中放入一些可以使用的内容

Session::put('key', 'this is something in session');

如果您想访问相同的
echo Session::get('key') //outputs this is something in session

0ve6wy6x

0ve6wy6x3#

您可以使用正确的名称空间\Session访问会话虚包

相关问题