2014-09-18 66 views
0

在我的模块配置在ZF2中,我有一些值是由图像操作标志组成的数组。ZF2配置:覆盖数组值

我需要能够覆盖项目的项目基础上,但是,当我尝试它只是合并2个数组。显然,我可以使用键来覆盖这种方式,但是我需要能够将整个值替换为整体,因为并非所有项目都需要所有的标志。

当数组是数组而非数组时,是否有办法完全覆盖某个值?

干杯

回答

1

我需要能够替换值作为一个整体,因为不是所有的标志将在所有项目上需要

如果您有共享ZF2的多个安装相同的模块,它们只是在配置上不同,只需定义配置值即可,不是在项目之间会有所不同。

你将被设置项目的全局配置文件(例如config/autoload/module.foo-module.global.config

所有第三方模块,使用此方法的特定值;例如主义ODM的module.config.php看起来是这样的:

return array(
    'doctrine' => array(

     'connection' => array(
      'odm_default' => array(
       'server'   => 'localhost', 
       'port'    => '27017', 
       'connectionString' => null, 
       'user'    => null, 
       'password'   => null, 
       'dbname'   => null, 
       'options'   => array() 
      ), 
     ), 
    ), 
); 

在每一个项目,然后我将覆盖(在你的情况是添加)的具体配置中module.doctrine-mongo-odm.global.php

return array(
    'doctrine' => array(

     'connection' => array(
      'odm_default' => array(
       'server' => '10.0.7.9', 
       'dbname' => 'my_database_name', 
       'options' => array(
        'foo' => 'bar', 
       ), 
      ), 
     ), 
    ), 
); 

的主要区别是你不是删除配置值,而是加入。这使得你的每个模块更加可重用。