Как и в классическом PHP, мы используем магические переменные для запуска и создания сеансов, поэтому как это сделать в Symfony?
В контроллере вы можете получить доступ к переменным сеанса через объект пользователя.
// Get a session value $name = $this->getUser()->getAttribute('name', 'default_value'); // Set a session value $this->getUser()->setAttribute('name', $value);
В 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.session.get('foo', 'bar'); }}