【发布时间】:2015-03-28 15:16:45
【问题描述】:
事先 - 感谢您提供有关此问题的任何帮助! 目前我们正在运行社交引擎 4.8.7 我们目前正在尝试获取有关默认 Zend 数据库配置设置的信息,而且我们是 Zend 框架的新手。
互联网已经产生了许多答案,但没有一个有效...... 在我们的控制器中,我们尝试过:
$this->getInvokeArg('bootstrap')->getOptions()
- 致命错误:调用未定义方法 ::getInvokeArg()
new Zend_Config($this->getOptions());
- 致命错误:调用未定义方法 ::getOptions()
$this->application->getOptions()
- 致命错误:调用未定义方法 ::getOptions()
Zend_Controller_Front::getInstance()->getParam('bootstrap')->getOptions();
- 返回一个空数组“array(0) { }”
Zend_Registry::get('db')
- 给出 NULL
Zend_Registry::getInstance()['DB']
- 给出 NULL
我们已经尝试了许多其他建议,这些建议要么在我们的 controller.php 中给出 null 或致命错误
目前这是我们的临时解决方案,它一点也不优雅,但很有效:
$config = new Zend_Config(include 'application/settings/database.php');
$config->adapter
这给了我们“mysqli”。以上也可用于检索大多数数据库配置信息,但会导致 - 严重的安全问题。
是否有正确的方法从 Zend 获取相同的信息而无需直接访问文件?
谢谢
【问题讨论】:
-
你用 Zend_Controller_Action 扩展你的控制器了吗??
-
我们的控制器默认已经扩展了 Engine_Content_Widget_Abstract 并且不支持多继承。我想我们可以只创建一个扩展 Zend_Controller_Action 的单独类,然后在我们当前的控制器中实例化它,但是内存中是否已经有一个对象可以从中提取此信息?
-
很抱歉,我对社交引擎了解不多。这可能会对你有所帮助.. faysalahmed.wordpress.com/2012/02/14/…
标签: php zend-framework