我想确保这种方式与我认为的方式相同。
我在myapp / config / autoload / global.php中设置了DB信息,如下所示:
return array(
'db' => array(
'driver' => 'Pdo',
'dsn' => 'mysql:dbname=zf2tutorial;host=localhost',
'driver_options' => array(
PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\''
),
),
...
现在我正在搞乱一个新模块,并希望用不同的数据库配置该特定模块。如果我向NewModule / config / module.config.php添加一个'db'配置数组,它会覆盖全局配置吗?我不确定应用程序范围的global.php文件是否与特定于模块的配置文件相同,或者它是否具有特殊规范 - 如接受数据库配置而不接受数据库配置文件。
编辑:我试过这个,看来我在module.config中添加的db条目被完全忽略了。如何覆盖每个模块的db配置?这对测试来说非常方便。
答案 0 :(得分:2)
如果我向NewModule / config / module.config.php添加'db'配置数组,它会覆盖全局配置吗?
是。所有配置都合并到一个怪物阵列中。
ZF支持多个适配器,你只需要在代码中按名称引用它们,这样它就知道你想要哪一个。有关如何设置的详细信息,请参阅此博文:http://samsonasik.wordpress.com/2013/07/27/zend-framework-2-multiple-named-db-adapter-instances-using-adapters-subkey/