获取Zend_Application的Config对象的引用

时间:2009-12-18 07:00:34

标签: php zend-framework config zend-application zend-queue

是否有辅助方法/对象/方法来获取对Zend_Application配置资源的引用?

我知道我可以做类似

的事情
$config = new Zend_Config_Ini($file, $environment);

但是这将重新加载/解析配置文件。我正在寻找一种方法来查看正在运行的Zend_Application的给定配置值。

我想要解决的更大问题是我希望Zend_Queue使用与我的默认数据库资源相同的数据库设置。如果除了“获取对配置的参考,读取资源值”之外还有更多“Zend Like”实现此方法的方式,请随时分享!

2 个答案:

答案 0 :(得分:3)

class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
    public function run()
    {
        // make the config available to everyone
        $config = $this->getOptions();
        Zend_Registry::set('config', new Zend_Config($config));
        parent::run();
    }
}

Zend_Queue

Zend_Queue_Adapter_Db __construct if (isset($this->_options['dbAdapter']))中有代码,所以你可以做这样的事情

new Zend_Queue_Adapter_Db(array('dbAdapter' => Zend_Db_Table::getDefaultAdapter()));

因为标准Zend_Application_Resource_Db可以使用配置选项resources.db.isDefaultTableAdapter = true

或者你可以将数据库适配器放在注册表中并从那里的任何地方获取

答案 1 :(得分:1)

Zend_Controller_Front::getInstance()->getParam('bootstrap')->getOptions()