【问题标题】:PHP sessions not available in Laravel?Laravel 中没有 PHP 会话?
【发布时间】:2018-04-22 21:15:56
【问题描述】:

Laravel 新手,在使用 Sessions 时遇到一些问题。

在我的 Linux 服务器中,我有一些 PHP 脚本存储在子域中,其中之一是 Laravel。

我都是这样设置的:

session_name("examplecom_session");
session_set_cookie_params(0, '/', '.example.com');
session_start();

除了 Laravel 之外,我可以在所有子域中检索我的所有 $_SESSION 数据数组。

我该如何解决这个问题?

【问题讨论】:

标签: php laravel session laravel-5


【解决方案1】:

执行session('variableA, 'myvalue') 实际上会将myvalue 设置为默认值,这不是设置会话变量值的正确方法。

相反,您可以通过session(['variableA' => 'myvalue']) 使用全局帮助器设置会话。

关于session_set_cookie_params 的问题,大多数设置都在配置文件中完成。

我建议你在https://laravel.com/docs/5.5/session#storing-data阅读它

【讨论】:

  • 但我没有在 Laravel 环境中设置主会话。基本上在 Laravel 中,我需要检索我的会话名称(在不同的非 Laravel 主域上创建)
【解决方案2】:

您可以使用 Laravel session() 函数获取会话变量。 喜欢

$a = session('VariableA') 

它将返回会话 $variableA 或者如果您想将 $variableA 设置为会话变量,您只需执行以下操作:session('variableA', 'value')

【讨论】:

  • 嗨 Radu,我可以像 $a = session('examplecom_session') 一样使用它?
  • 但是我该如何session_set_cookie_params
  • 关于会话的所有信息你可以在这里找到:[Laravel session] (laravel.com/docs/5.5/session#using-the-session)
  • 不要专注于我的问题...我需要从 PHP 域中检索 $SESSION 数据
  • 然后在控制器函数中你可以使用 Request $request 参数,然后: $data = $request->session()->all();它会给你所有的会话数据。
猜你喜欢
  • 2016-07-02
  • 1970-01-01
  • 2017-02-13
  • 2016-10-09
  • 2018-03-08
  • 2018-08-10
  • 2010-11-30
  • 2011-04-14
相关资源
最近更新 更多