class Session extends AbstractSession { public function setUser(User $user) { $this->set('user', $user); } public function hasUser() { return $this->has('user'); } public function getUser() { return $this->get('user'); } } class User { } var_dump(AbstractSession::VERSION); var_dump(AbstractSession::API_VERSION); $backend = new PhpSessionBackend(); $session = new Session($backend); $session->configure('session-name', '.example.com'); $session->start(); if ($session->hasUser()) { $user = $session->getUser(); } else { $session->setUser(new User()); } var_dump($session->hasUser()); var_dump($session->getUser());
<?php require __DIR__ . '/../src/autoload.php'; class Session extends spriebsch\session\AbstractSession { public function getCounter() { return $this->get('counter'); } public function incrementCounter() { if (!$this->has('counter')) { $this->set('counter', 0); } $this->set('counter', $this->get('counter') + 1); } } $session = new Session(new spriebsch\session\PhpSessionBackend()); $session->configure('session-name', 'localhost'); $session->start('foo'); $session->incrementCounter(); var_dump($session->getCounter()); $session->commit();