问题 ZF2:如何为生产,升级等实现不同的配置?


在我从github下载的sceleton应用程序中有一个文件 模块/应用/配置/ module.config.php

return array(
    'layout'                => 'layout/layout.phtml',
    'display_exceptions'    => true,
    'di'                    => array(
        'instance' => array(
        'alias' => array(....

此文件用于module / Application / module.php:

public function getConfig()
{
    return include __DIR__ . '/config/module.config.php';
}

如何根据域(生产,分期,开发)创建3种不同的配置?似乎在ZF1中使用了env vars,但我不知道如何在zf2模块中做到这一点。 谢谢!


10475
2018-03-24 07:20


起源



答案:


创建一个名为的文件 development.config.php 在 application/config/autoload 这将在加载所有模块的配置文件后加载。因此,您可以通过将相关键添加到此文件来覆盖合并配置的任何内容。

加载的文件的名称是 {APPLICATION_ENV}.config.php,所以你可以创建 production.config.php

请注意,您可能需要更改glob index.php 因为目前还不清楚Skeleton应用程序是否会在ZF2开发的这个阶段(2012年4月初)开箱即用,而不是APPL_ENV。


9
2018-03-26 10:52





它似乎适用于简单的.htaccess更改。 :

SetEnv APPLICATION_ENV development

我不知道升级是否有效,但生产和开发工作是开箱即用的。 我认为它通过事件监听器起作用,但不要问我怎么样,我还没有那么远。


4
2018-03-24 12:35