我正在使用默认的Zend_Application
设计模式,它在应用程序引导程序中自动加载zend config ini文件,我需要在许多模型和控制器中输入文件的变量。
现在,我正在通过将配置对象设置为Zend_Registry
的键来解决它:
protected function _initConfig()
{
$config = new Zend_Config($this->getOptions());
Zend_Registry::set('config', $config);
}
通常,我不喜欢使用Zend_Registry
,因为它在我的IDE中不提供代码自动完成,并且很难跟踪我在注册表命名空间中的内容。
是否有其他方法可以访问Zend_Application的config ini?
答案 0 :(得分:4)
在控制器中你应该能够:
$this->getInvokeArg('bootstrap')->getOptions();
访问配置。对于模型,你真的应该传递你需要的选项。否则你唯一的选择就是注册表。
答案 1 :(得分:0)
您可以随时使用
自行初始化它$options = new Zend_Config_Ini('/path/to/config.ini',
'config');
Wich几乎就是引导程序为你做的事情。然后你会在$ options上自动完成。但是你必须在每次需要的时候初始化它。 我认为修改代码以适应自动完成并不是最好的想法。但这是个人的。
如果我没有被Zend Studio 8/9(可能是7)弄错,即使对Zend_Registry::get()
返回的对象也有自动完成功能。