0

在尝试从 Symfony 2.0 迁移到 2.1 时,我发现了一些有趣的问题。

我无法获得本机会话 ID,即使是简单的,刚下载的 Symfony 2.1 副本。

/**
 * @Route("/sess")
 */
public function sessionAction()
{
    $session = $this->getRequest()->getSession();
    return new Response($session->getId());
}

那里发生了显着变化吗?

4

1 回答 1

5

看看这个文档(在app/config/config.yml部分下)

在 Symfony 2.1 中,会话总是按需启动。所以我会说你看到的是正常行为。您需要显式启动会话,然后才能获取会话 ID。我还没有检查过,但也许设置第一个变量也会启动会话,这是因为它在您调用 set() 后起作用。

于 2012-09-08T10:51:11.973 回答