Zend framework2 zend 2:覆盖';db';在config\autoload\global.php、local.php中为特定模块进行配置

Zend framework2 zend 2:覆盖';db';在config\autoload\global.php、local.php中为特定模块进行配置,zend-framework2,Zend Framework2,我想确保它能像我想的那样工作 我在myapp/config/autoload/global.php中设置了数据库信息,如下所示: return array( 'db' => array( 'driver' => 'Pdo', 'dsn' => 'mysql:dbname=zf2tutorial;host=localhost', 'driver_options' => array( PDO::M

我想确保它能像我想的那样工作

我在myapp/config/autoload/global.php中设置了数据库信息,如下所示:

return array(
    'db' => array(
        'driver' => 'Pdo',
        'dsn' => 'mysql:dbname=zf2tutorial;host=localhost',
        'driver_options' => array(
            PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\''
        ),
    ),
...
现在,我正在处理一个新模块,并希望使用不同的db配置该特定模块。如果我在NewModule/config/module.config.php中添加一个'db'配置数组,它会覆盖全局配置吗?我不确定应用程序范围的global.php文件是否与特定于模块的配置文件相同,或者它是否有特殊的规范,比如接受db配置,而特定于模块的配置文件则没有

编辑:我试过了,似乎我在module.config中添加的db条目被完全忽略了。如何覆盖每个模块的db配置?这将非常方便用于测试目的

如果我在NewModule/config/module.config.php中添加一个'db'配置数组,它会覆盖全局配置吗

对。所有配置都合并到一个怪物阵列中


ZF支持多个适配器,您只需在代码中按名称引用它们,这样它就知道您需要哪个适配器。有关如何设置它的详细信息,请参阅此博客帖子:

我试图实现此功能,但似乎没有实现。我用我正在使用的代码开始了另一篇文章。