与经典PHP一样,我们使用魔术变量来启动和创建会话,那么如何在Symfony中执行此操作?
答案 0 :(得分:80)
在Symfony2中,语法不同:
$session = $this->getRequest()->getSession();
// store an attribute for reuse during a later user request
$session->set('foo', 'bar');
// in another controller for another request
$foo = $session->get('foo');
你也可以从Twig获取会话变量,而不必显式传递会话变量(它在全局'app'中):
{{ app.session.get('foo', 'bar'); }}
答案 1 :(得分:32)
在您的控制器中,您可以通过用户对象访问会话变量。
// Get a session value
$name = $this->getUser()->getAttribute('name', 'default_value');
// Set a session value
$this->getUser()->setAttribute('name', $value);