【问题标题】:Why is session data empty in Symfony2 and how to access it?为什么 Symfony2 中的会话数据为空以及如何访问它?
【发布时间】:2012-09-24 04:15:53
【问题描述】:

第三方 PHP 应用程序将数据存储在用户会话中(使用 PHPSESSID 的 cookie)。在这个应用程序中,$_SESSION 变量包含所有这些数据。

在我的 Symfony2 应用程序中,相同的 $_SESSION 仅包含一些 Symfony 数据(_sf2_attributes_security_secured_area_sf2_flashes 等),而我没有看到来自其他应用程序的任何其他数据。

我在控制器中对 $_SESSION 变量进行了var_dump 来检查这一点。使用 Symfony Session 对象显示相同的数据。 这 2 个应用程序使用相同的域来存储 PHPSESSID cookie。

如何在我的 Symfony 应用程序中获取会话的所有数据?我希望在 2 个应用程序之间共享会话。

【问题讨论】:

    标签: php session symfony


    【解决方案1】:

    我终于解决了这个问题。 Symfony 将其会话数据存储在自己的目录中(app/cache/[environment]/sessions)。所以解决方法是在config.yml中设置默认会话路径:

    framework:
        session:
            save_path: ~
    

    这将设置默认路径(例如 Linux 上的 /var/lib/php5),并且旧版应用会话数据可供 Symfony 应用使用。

    【讨论】:

      猜你喜欢
      • 2019-06-13
      • 1970-01-01
      • 2019-01-16
      • 1970-01-01
      • 1970-01-01
      • 2010-10-10
      相关资源
      最近更新 更多