How to use Zend\Session in zf2?

Does anybody try zf2? I can not understand new mechanism of using sessions in zf2. How can I write and read to/from the session in new zend framework?

Also I can not find any examples in the internet.


Some examples of zf2 sessions usage:

Session creation:

use Zend\Session\Container;
$session = new Container('base');

Check that key exists in session:


Getting value from the session by key:

$email = $session->offsetGet('email');

Setting value in session:

$session->offsetSet('email', $email);

Unsetting value in session:


And other easy way to use session are:

$session = new Container('foo');

// these are all equivalent means to the same end

$session['bar'] = 'foobar';

$session->bar = 'foobar';

$session->offsetSet('bar', 'foobar'); 

Definitely yes, you should use Zend\Session\Container

Container extends of ArrayObject and instantiates with ARRAY_AS_PROPS flag that means you can easily iterate through properties and read/write them, e.g.

use Zend\Session\Container as SessionContainer;

$this->session = new SessionContainer('post_supply');
$this->session->ex = true;

First argument is session namespace and second — Manager. Manager is a facade for Storage and SaveHandler and it's configured with ConfigInterface in order to save your session data in DB or Memcache server.

I'm currently working with zf2. I found usage of Sessions in:


Maybe you can find your answer there.

If you are trying to use session in your login action, you can use: "Zend\Authentication\AuthenticationService". It Authenticates the user and store session as well.

getStorage()->write($contents) will store the session.

well here is the brief example. i have implemented regarding maintaining session on successful authentication of user.

$registry = Zend_Registry::getInstance();
$DB = $registry['DB'];
$authAdapter = new Zend_Auth_Adapter_DbTable($DB);
//get values
$username = $request->getParam('username');
$password = $request->getParam('password');
//set values

$auth = Zend_Auth::getInstance();
//to store in session
$auth->setStorage(new Zend_Auth_Storage_Session('front'));

$authResult = $auth->authenticate($authAdapter);
if ($authResult->isValid()) {
    $authAdap = $authAdapter->getResultRowObject(null, "Password");
} else {

getting values or check data stored in session related to user

$auth = Zend_Auth::getInstance();
$auth->setStorage(new Zend_Auth_Storage_Session('front'));
     $data = $auth->getStorage()->read();

hope this could help someone

use Zend\Session\Container; 

public function createAction(){
  $session = new Container('name');
  $session->offsetSet('session_variable', $value);
//the above codes are used for create session.

public function take_valuesAction(){ 
  $session = new Container('name');
  echo $value = $session->offsetGet('session_variable');
//the above codes are used for take values from session.

public function destroyAction(){ 
  $session = new Container('name');
//the above codes are used for destroy the session.

To start a session you need to use


Need Your Help

How to disable GCC warnings for a few lines of code

c gcc compiler-warnings pragma

In Visual C++, it's possible to use #pragma warning (disable: ...). Also I found that in GCC you can override per file compiler flags. How can I do this for "next line", or with push/pop semantics ...

Allowed characters in filename

special-characters filenames

Where can I find a list of allowed characters in filenames, depending on the operating system?