如何在 zf2 中使用 Zend\Session?

2022-08-30 15:02:36

有人尝试过zf2吗?我无法理解在zf2中使用会话的新机制。如何在新的zend框架中写入和读取会话?

我也无法在互联网上找到任何例子。


答案 1

zf2 会话用法的一些示例:

会话创建:

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

检查会话中是否存在密钥:

$session->offsetExists('email')

按键从会话中获取值:

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

在会话中设置值:

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

取消设置会话中的值:

$session->offsetUnset('email');

使用会话的其他简单方法是:

$session = new Container('foo');

这些都是达到同一目的的等价手段

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

$session->bar = 'foobar';

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

答案 2

当然可以,您应该使用 Zend\Session\Container

ArrayObject的容器扩展并使用标志进行实例化,这意味着您可以轻松地迭代属性并读取/写入它们,例如ARRAY_AS_PROPS

use Zend\Session\Container as SessionContainer;

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

第一个参数是会话命名空间,第二个参数是管理器。 是 和 的一个外观,它配置为将会话数据保存在 DB 或 Memcache 服务器中。ManagerStorageSaveHandlerConfigInterface


推荐