0

我使用以下代码在 Symfony2 中的会话中写入了一个值:

    $session = new Session();
    $session->start();
    $session->set('passport', '1');

在同一页面上,我使用以下代码测试该值是否已存储在会话中,并且完全成功:

    $request = $session->get('passport');
    print_r($request);

但是,创建 Session 的控制器随后会将用户重定向到另一个控制器。在这个控制器中,我有以下代码:

public function indexAction()
{
        $request = $session->get('passport');

        if (isset($request)) {
                    do something
        } else {
            return $this->redirect("denied.html");
        }
}

但什么也没有发生。屏幕只是变白,没有任何错误。我已经$request用这段代码替换了变量:

$request = '1';

并且代码工作正常。只是当我尝试获取会话时它不起作用。

4

1 回答 1

0

我在这里找到了这个答案,然后我尝试了第二个问题。

第二个问题添加了这段代码:

$session = $this->getRequest()->getSession();

我已经添加了这个,代码现在可以工作了。

于 2013-07-30T16:13:45.480 回答