Podobnie jak w klasycznym PHP używamy magicznych zmiennych do rozpoczynania i tworzenia sesji, więc jak to zrobić w Symfony?Jak korzystać z sesji w Symfony?
30
A
Odpowiedz
32
W kontrolerze można uzyskać dostęp do zmiennych sesji za pośrednictwem obiektu użytkownika.
// Get a session value
$name = $this->getUser()->getAttribute('name', 'default_value');
// Set a session value
$this->getUser()->setAttribute('name', $value);
80
W Symfony2, składnia jest inna:
$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');
Można również uzyskać zmiennych sesji z gałązka, bez konieczności przechodzenia zmiennej sesji wyraźnie (to w globalnej „aplikacji”):
W twoim widoku możesz uzyskać dostęp do zmiennych sesji za pomocą zmiennej '$ sf_user', tak samo jak robisz z' $ this-> getUser() 'w kontrolerze. – Throoze
Nie sądzę, że to zadziała, jeśli nie masz użytkownika lub zapory. – Ascherer