我的application.ini
中有这些行如何在我的控制器
中阅读用户resources.doctrine.dbal.connections.default.parameters.driver = "pdo_mysql"
resources.doctrine.dbal.connections.default.parameters.dbname = "zc"
resources.doctrine.dbal.connections.default.parameters.host = "localhost"
resources.doctrine.dbal.connections.default.parameters.port = 3306
resources.doctrine.dbal.connections.default.parameters.user = "root"
resources.doctrine.dbal.connections.default.parameters.password = "123456"
我使用此代码,但它重新调整null
$bootstrap = Zend_Controller_Front::getInstance()->getParam('bootstrap');
$user = $bootstrap->getOption('user');
var_dump($user);
修改 我怎样才能阅读所有连接选项?
答案 0 :(得分:6)
我认为你应该使用
$this->getInvokeArgs('bootstrap');
有关手册中的更多信息see this chapter。
使用
怎么样?$conf = $bootstrap->getOption('resources');
$dbConf = $conf['doctrine']['dbal']['connections']['default']['parameters'];
答案 1 :(得分:3)
如下:
$config = new Zend_Config_Ini(APPLICATION_PATH . '/configs/application.ini', APPLICATION_ENV);
$connectionParams = $config->resources->doctrine->connections;
或者在Bootstrap
期间,在$config
或Bootstrap
中创建并保存此Zend_Registry
个对象,以便以后在您的控制器中进行检索。
答案 2 :(得分:1)
这在您的控制器中。
$bootstrap = $this->getInvokeArg('bootstrap');
$appinidata = $bootstrap->getOptions();
$user=$appinidata['resources']['doctrine']['dbal']['connections']['default']['parameters'] ['user'];
这应该打印“root”。
print_r($user);
答案 3 :(得分:0)
要访问Doctrine容器资源,只需使用:
$bootstrap = $this->getInvokeArg('bootstrap');
$doctrine = $bootstrap->getResource('doctrine');
从那里你可以深入查看默认连接的用户名(如果需要,可以指定连接,只需在调用getConnection时传递连接名称):
$username = $doctrine->getConnection()->getUsername();
答案 4 :(得分:0)
在这种情况下,你应该使用 Zend_Config_Ini 类
$config = new Zend_Config_Ini('/path/to/config.ini','staging',$options);
第二个参数是应加载 INI 文件中的一个部分; 第三个参数是允许修改加载文件的关键。
您可以通过以下方式输出值用户:
$config->resources->doctrine->dbal->connections->default->parameters->user;
答案 5 :(得分:0)
您可以使用set方法设置任何变量,如下面的公共文件夹中的index.php 让
$ config ='test'; Zend_Registry :: set('config',$ config);
一旦设置了变量,您就可以通过以下方法
来使用任何控制器/模型<强>要是Zend_Registry ::得到( '配置'); 强>
跳跃帮助!!