首页 文章

我应该在哪里存储基于MVC模式的Laravel Session数据?

提问于
浏览
1

我正在使用集成到WordPress的Laravel,并努力了解我应该在何处根据MVC设计模式放置会话数据?

回到那一天,我曾经将所有内容放在视图(header.php和footer.php)文件中,过了一段时间后,它变得一团糟,完全混乱 .

正如here所写:

作为MVC我使用CodeIgniter,所以我不知道这对于您的特定环境是否适用,但我通常从控制器设置会话值 . 即使在视图中也可以这样做,但正确的方法是将代码保存在控制器中(将数据库内容保留在模型中) . 在控制器中,您可以使用标准的php $ _SESSION数组,或者它存在于您的框架会话类中 .

是的,我理解这是一个很好的做法,不要搞乱视图并将会话变量放在控制器内 . 这是问题所在:

当我使用WordPress时,目标是有一个会话变量总是被加载的地方,无论我改变主题或其他什么都没关系,它们应该留在Laravel后端 .

没有任何测试,我可以考虑几个选项:

  • 使用Laravel服务提供程序并在 boot 函数中插入会话变量 .

  • 但是,使用Laravel Middleware功能,不确定如何实现它 .

1 回答

  • 0

    您可以使用laravel https://laravel.com/docs/5.6/session Session帮助程序 .

    然后你可以做 Session::put('hello','world'); Session::save(); 并用 Session::get('hello'); 检索它 . 你可以在你想要的任何地方做到这一点,只要你记得在把东西放进去,修改东西或删除东西后保存会话 .

    只要加载了Laravel并且域具有laravel会话cookie,您就可以访问它们 .

相关问题