gpt4 book ai didi

php - 与 laravel 共享 session 信息并返回

转载 作者:可可西里 更新时间:2023-11-01 13:22:53 25 4
gpt4 key购买 nike

我们的网站建立在自定义 php mvc 框架之上,我们希望慢慢地将每个流程(例如:注册)转换为 Laravel。

所以本质上,现有代码和使用 laravel 的新代码必须共存。但是我们遇到了一个障碍,由于它们的约定,laravel 设置的 session 信息对其他 mvc 不可用,反之亦然。

例如,自定义 mvc 使用以下内容。

$_SESSION['AUTH']='TRUE';

虽然 Laravel 使用这样的东西。

Session::put('AUTH', 'TRUE');

我们尝试通过 laravel 类设置 $_SESSION['AUTH'] = 'TRUE'。但是当控制传递给旧的 MVC 时,我们无法访问它。

我知道它很复杂,我应该等待将整个代码库转换为 Laravel,然后完成它。但我们是一家资源最少的小公司。因此,我们没有奢侈地停止功能开发并花时间使用 Laravel 独家重写。

所以我的问题是这样的。如果通过任何机制,我们如何才能实现这一目标?

全局变量?

还有其他建议吗?

最佳答案

我建议您在这里使用 Laravel 的 Auth-Class,监听 auth.login 事件并手动设置您的 session 标志。

Event::listen('auth.login', function($user)
{
$_SESSION['AUTH']='TRUE';
});

这是最简单的方法,你只需要在完全迁移到 Laravel 时删除事件监听器即可。

我知道这是一件快速而肮脏的事情,但是在完全迁移之后你不想再使用 $_SESSION 来管理你的身份验证 ;) 所以我认为这应该是一个非常新旧代码库之间的良好桥梁。

关于php - 与 laravel 共享 session 信息并返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18951531/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com