【问题标题】:Symfony2 store variables in sessionSymfony2 在会话中存储变量
【发布时间】:2015-03-09 10:44:43
【问题描述】:

首先,我正在使用 symfony 2.0.20...我在会话中遇到问题。我正在这样做:

获取会话服务:

$session = $this->get('session');

保存变量(显然条件有一些价值):

$session->set('criteria', $criteria);

我得到这样的变量:

$criteria = $session->get('criteria');

但是,我里面从来没有数据……有什么想法吗? 而且,在 chrome/firefox 检查器中,我什么也没看到,“var_dump”也一样...

任何帮助将不胜感激

罗杰

【问题讨论】:

  • 你确定之前调用过 session_start() 吗?
  • 在官方文档中link 说没有必要……但我试试看
  • @n-dru 不起作用... :(
  • 抱歉,我不了解 Symphony,我只是猜测缺少会话变量的最常见原因...

标签: php symfony session


【解决方案1】:

你开始你的会话了吗 $会话 = 新会话(); $session->start();

【讨论】:

  • 如果我这样做,我有下一个错误:可捕获的致命错误:参数 1 传递给 Symfony\Component\HttpFoundation\Session::__construct() 必须实现接口 Symfony\Component\HttpFoundation\SessionStorage\SessionStorageInterface , 没有给出
【解决方案2】:

请务必use

use Symfony\Component\HttpFoundation\Request;

这就是我在 Symfony2 中开始会话的方式

$session = $request->getSession();

我是这样设置的

$session->set('products', $products);

这就是我得到它的方式

$session->get('products')

在我的 config.yml 中

framework:
    session:
        cookie_lifetime: 86400
        gc_maxlifetime: 1800

我希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多