Php 检查用户是否可以访问zend framework中的登录后页面
在Zend Framework中,有什么更好的方法限制用户访问登录后页面Php 检查用户是否可以访问zend framework中的登录后页面,php,zend-framework,Php,Zend Framework,在Zend Framework中,有什么更好的方法限制用户访问登录后页面 如果用户未登录。如果没有Zend,我将编写代码检查 用户ID是否在会话中设置,并将该代码放在公共文件中(用于所有post 登录页面) 在Zend框架中,我可以使用Zend_auth的hasIdentity方法检查,但我没有 要检查所有动作的内部。我想的另一种方法是创建一个 插件并将其挂接到routeshutdown事件,然后在获取控制器和操作后 来自请求对象的名称我可以决定是否重定向用户 请推荐一些在zend framew
如果用户未登录。如果没有Zend,我将编写代码检查 用户ID是否在会话中设置,并将该代码放在公共文件中(用于所有post
登录页面) 在Zend框架中,我可以使用Zend_auth的hasIdentity方法检查,但我没有
要检查所有动作的内部。我想的另一种方法是创建一个
插件并将其挂接到routeshutdown事件,然后在获取控制器和操作后
来自请求对象的名称我可以决定是否重定向用户
请推荐一些在zend framework中实现它的好方法您通常会编写一个控制器插件并将其添加到前端控制器。通过这种方式,您可以在需要的地方拦截分派和路由进程,并向适当的页面发出重定向
class Your_Controller_Plugin_Authcheck extends Zend_Controller_Plugin_Abstract
{
}
在引导类中:
protected function _initFrontControllerPlugins()
{
$this->bootstrap(array('AuthcheckPlugin', 'FrontController'));
$front = $this->getResource('FrontController');
$front->registerPlugin($this->getResource('AuthcheckPlugin'));
}
protected function _initAuthcheckPlugin()
{
$plugin = new Your_Controller_Plugin_Authcheck();
return $plugin;
}
顺便说一句:这是Zend Framework 1-在2中可能会起到相同的作用,但我相信如果您已经使用它,您可能会在那里做一些更改