In 5.6, we could do this:

$_SESSION['MySession']['sessionName'] = 'sessionValue';

In 5.7, we can do this instead:

$session = Core::make('app')->make('session');
$session->set('MySession-sessionName', 'sessionValue');

Retrieve the session:

Core::make('app')->make('session');

$session_sessionName = $session->get('MySession-sessionName');
$session->remove('MySession-sessionName'); // clear session variable

Similarly, you can display flash messages. First you can add messages like this:

$session = Core::make('app')->make('session');

$session->getFlashBag()->add('errormsg', 'This is an error message');
$session->getFlashBag()->add('errormsg', 'Another error message');

Display the messages in your view:

Core::make('app')->make('session');

foreach ($session->getFlashBag()->get('errormsg', array()) as $error) {
      echo $error;
}

Read more about session management here: http://symfony.com/doc/current/components/http_foundation/sessions.html

Loading Conversation