2012-05-16 147 views
0

我已经在我的引导Zend公司注册地不工作

protected function _userSession(){ 
    $session=new Zend_Session_Namespace("userIdentity"); 
    $session->greet="Hello!!!!!"; 
    Zend_Registry::set("session", $session);   
} 

并在控制器下面的代码我写:

public function index() { 
    $session = Zend_Registry::get("session"); 
    echo $session->greet;   
} 

但它会显示类似的错误消息:没有条目被登记为关键“会话”。这段代码有什么问题。任何解决方案

+0

你是否用_initUserSession作为前缀来调用它?或者你在另一个函数的引导程序中调用它? – Gohn67

+0

我在bootstrap中创建了_userSession函数,但不用_init前缀 – Sky

回答

3

我认为你只需要更改用户会话的引导方法_initUserSession()

取决于你如何设置的东西了,自举会自动调用与_init

开始在这里看到的所有方法:http://framework.zend.com/manual/en/zend.application.theory-of-operation.html#zend.application.theory-of-operation.bootstrap.resource-methods

如果你有被Zend使用的默认index.php,那么你的引导会自动调用与_init

开头的所有方法

所以,如果你有类似如下:

$application->bootstrap()->run();

但是,如果你做这样的事情:

$application->bootstrap(array(
    'FrontController', 
    'Layout', 
    'View', 
    'Db'))->run(); 

以上只会调用你数组中列出的初始化方法。

+1

是的,我非常感谢你...... – Sky