2015-09-19 151 views
0

我試圖爲我包內的一個配置文件的潛在位置內尋找項目根:.config.yml從作曲家包

目前,我裝我的一個類中的數組以及一些典型地點:

protected $configDirectories = [ 
    './', 
    './config', 
    './app/config', 
    './config', 
    './vendor/name/packagename/config' 
]; 

問題是;我的包被加載到./vendor/name/packagename當然,./不知道如何到達項目根目錄。

其目的是讓這個軟件包的用戶只需將.config.yml放入任何預先指定的目錄中即可獲得。我怎樣才能做到這一點?

回答

-1

我有類似的情況。在我的情況下,前端控制器在./。所以,我需要我的包的用戶做這樣的事情......

\Wonderful\Package\Init::setRootDirectory(__DIR__); 

(但我最終決定,而不是有魔力的搜索順序在幕後發生的事情,找到配置文件,我結束了具有一個(或多個)明確指定(可與任何名稱的任意位置)的配置文件...

\Wonderful\Package\Init::loadConfigFile(__DIR__.'/config.yml'); 
\Wonderful\Package\Init::loadConfigFile(__DIR__.'/config.DEV-overrides.yml'); 
-1

如果你想給用戶配置包的能力,你必須通過semantic configuration而不是通過做一個指定的和自己的配置文件,這是Symfony的方式