Zend会话处理新手的建议:)

时间:2012-08-01 11:32:53

标签: zend-framework session

我想问一下Zend Framework中的会话处理。我正在使用Zend_Session_Namespace进行会话处理。我的问题是我应该如何以有效的方式实现这一点?此时我会在每个控制器的操作中进行会话检查。

我应该如何在布局文件中处理会话处理,因为我现在这样做(使用sessionExists()检查每个操作并检查userId是否已设置)似乎非常低效和重复。

thanx获得所有支持! :)

P.S。如果有任何帮助,这是我在控制器中用于会话检查的函数:

 private function checkSession()
        {
            $session = new Zend_Session_Namespace("userSession");
            if(Zend_Session::sessionExists() && $session->__isset("userId"))
            {
            return true;    
            }
        else
        {
            return false;
        }
    }

1 个答案:

答案 0 :(得分:1)

Joellord发布的链接应该有所帮助。如果您需要在每个请求上运行某些内容,您应该考虑使用控制器插件 - Documentation是一个开始的好地方。

如果您实施auth系统,此代码将告诉您用户是否已登录:

  

$ auth = Zend_Auth :: getInstance();
  if($ auth-> hasIdentity()){//做某事......

它还可以扩展为您提供用户对象,他们的角色/权限等等。

Matthew Weier O'Phinney的

This article是使用Zend_Auth了解基本身份验证的绝佳资源。