2017-02-10 39 views
0

我只想在開發環境中加載ghislainf/zf2-whoops,但它說我必須先加載它(意思是在application.config.php)。ZF2 - 我可以先從`development.config.php`加載模塊嗎?

有沒有辦法先加載development.config.php模塊?

UPDATE:

我使用abacaphiliac/zend-phpdotenv加載ENV變量,這意味着ENV變量不是由application.config.php正在處理的時間尚未加載。基於這個原因,我不能使用基於環境的動態加載。這就是我期望首先加載開發模塊的原因。

回答

1

您可以輕鬆地爲不同的環境設置不同的配置文件。因此,開發生產的一個配置。

這在Zend Framework documentation chapter called Advanced Configuration Tricks非常充分描述,並且更具體here in Environment-specific system configuration

他們使用的技巧是設置APP_ENV全局變量,並將其設置爲productiondevelopment

<?php 
$env = getenv('APP_ENV') ?: 'production'; 

// Use the $env value to determine which modules to load 
$modules = array(
    'Application', 
); 
if ($env == 'development') { 
    $modules[] = 'ZendDeveloperTools'; 
} 

使用此解決方案時,您可以在每個配置中按您需要的順序加載所需的模塊。

+0

我更新了關於此方法的問題 –

+0

@ChristopherFrancisco您是否閱讀過我在我的回答中提到的文檔?你可以在你的htaccess文件中設置環境變量。 – Wilt

+0

是的,我知道這一點。我們關注[12factor](https://12factor.net/),所以我們使用dotenv加載env變量。不過,我認爲我們不妨直接使用dotenv而不是zf2模塊。 –

相關問題