我对 ZF2 很陌生,我正在尝试找到一种简单的方法来允许登录链接隐藏在用户已登录的视图中,并在用户注销时再次显示。我已经查看了 ZF2 的 ACL 示例,但我仍然有点困惑,我不确定这是否真的是实现如此简单的事情所需要的。
如果有人可以分享一些关于如何做到这一点的知识,我会永远感激不尽。谢谢
我对 ZF2 很陌生,我正在尝试找到一种简单的方法来允许登录链接隐藏在用户已登录的视图中,并在用户注销时再次显示。我已经查看了 ZF2 的 ACL 示例,但我仍然有点困惑,我不确定这是否真的是实现如此简单的事情所需要的。
如果有人可以分享一些关于如何做到这一点的知识,我会永远感激不尽。谢谢
可以帮助您解决此问题的标准身份视图助手。如果您将身份验证服务添加到服务管理器,这将开箱即用,例如在您的模块中是config/module.config.php
这样的:
/* Some configuration omitted */
return array(
'service_manager' => array(
'Zend\Authentication\AuthenticationService' => function($sm) {
$authService = new \Zend\Authentication\AuthenticationService();
$authService->setStorage(new \Zend\Authentication\Storage\Session('user', 'details'));
return $authService;
},
),
);
然后你可以在你的视图脚本中这样做:
if ($this->identity() == null) {
// User is not logged in; show login link here
}
else {
// User is logged in; show profile link here or do nothing
}