Php ';Zend#u例外'-&燃气轮机';注册表已初始化';

Php ';Zend#u例外'-&燃气轮机';注册表已初始化';,php,zend-framework,error-handling,Php,Zend Framework,Error Handling,以下是我的全部错误: 严格的标准:访问静态属性 引导::$frontController在中作为非静态 /Users/panda/Dropbox/www/_playway/myApp/Zend/Application/Resource/Frontcontroller.php 在线145 致命错误:未捕获异常“Zend_exception”和消息 中的“注册表已初始化” /Users/panda/Dropbox/www/_playway/myApp/Zend/Registry.php:70堆栈 跟

以下是我的全部错误:

严格的标准:访问静态属性 引导::$frontController在中作为非静态 /Users/panda/Dropbox/www/_playway/myApp/Zend/Application/Resource/Frontcontroller.php 在线145

致命错误:未捕获异常“Zend_exception”和消息 中的“注册表已初始化” /Users/panda/Dropbox/www/_playway/myApp/Zend/Registry.php:70堆栈 跟踪:#0 /Users/panda/Dropbox/www/_playway/myApp/application/Bootstrap.php(217): Zend_注册表::setInstance(对象(Zend_注册表))#1 /Users/panda/Dropbox/www/_playway/myApp/application/Bootstrap.php(56): 引导->_initSetupRegistry()#2 /Users/panda/Dropbox/www/_playway/myApp/Zend/Application/Bootstrap/BootstrapAbstract.php(669): 引导->_initPrepare()#3 /Users/panda/Dropbox/www/_playway/myApp/Zend/Application/Bootstrap/BootstrapAbstract.php(622): Zend\u应用程序\u引导\u引导\u引导->\u执行器资源(“准备”) 4. /Users/panda/Dropbox/www/_playway/myApp/Zend/Application/Bootstrap/BootstrapAbstract.php(586): Zend_应用程序_Bootstrap_BootstrapAbstract->_Bootstrap(NULL)#5 /Users/panda/Dropbox/www/_playway/myApp/Zend/Application.php(355): Zend_应用程序_Bootstrap_BootstrapAbstract->Bootstrap(NULL)#6英寸 /Users/panda/Dropbox/www/_playway/myApp/Zend/Registry.php在线 七十

这是我的引导程序中的函数

/*
* Zend_Registry get's born here so it can be accesed
*/
protected function _initSetupRegistry()
{

    self::$registry = new Zend_Registry(array(), ArrayObject::ARRAY_AS_PROPS);
    Zend_Registry::setInstance(self::$registry);

}
如果你需要更多的代码,请让我知道,我会想找到问题的一些提示,或者如果有人知道确切的问题


谢谢大家!

你想用这种方法达到什么目的

如果您只需要注册表实例,请使用
Zend\u registry::getInstance()
。您不应该构造它(我不知道为什么他们使用单例模式,但没有将uu构造为私有)

如果确实要替换Zend_注册表的实例,请首先调用Zend_注册表::_unsetInstance()

如果您只想设置静态$registry变量,以便以后可以引用它,请尝试:

self::$registry = Zend_Registry::getInstance(); 
self::$registry->set('configuration', 'myconfig');
但我不确定这是否必要,因为您可以从任何范围访问
Zend_Registry::getInstance()
。因此,上述内容与:

Zend_Registry::getInstance()->set('configuration', 'myconfig');

你可以在任何地方打电话

self::$registry=newZend_注册表(array(),ArrayObject::array_AS_PROPS);Zend_注册表::getInstance(self::$Registry);这样不会设置注册表datagetInstance()不会设置任何内容。。不需要任何参数。看看这个类,我应该如何使用它,因为我在我的类中使用它来设置值,比如
self::$registry->configuration='myconfig'
self::$registry=Zend_registry::getInstance();self::$registry->set('configuration','myconfig')你是最好的,编辑答案并粘贴进去,这样我就可以接受了