我喜歡做這樣的方式略有不同,我libabry
我將不得不
/vendor/vendorname/pkg/config/system.php
/vendor/vendorname/pkg/config/local.sample.php
,並提供指導,以複製
/vendor/vendorname/pkg/config/local.sample.php
到
/config/local.php
然後在我的代碼我會像
$sysconffile = static::$vendorbasedir . '/config/system.php';
if (file_exists($sysconffile)) {
$sysconf = require $sysconffile;
} else {
throw new \RuntimeException('Sys Conf Missing!');
}
$localconf = [];
$localconfile = static::$appbasedir . '/config/local.php';
if (file_exists($localconfile)) {
$localconf = require $localconfile;
}
UPDATE:
我也喜歡靜態類超過定義的數據,作爲一個定義是在文檔類型提示和過寫很寬鬆..
所以一旦我有兩個配置的,我平時做
static::$config = array_replace_recursive($sysconf, $localconf);
剛一說明,在*正確*的方式可以被歸類爲SUBJ ective。 – Script47
一種方法是用配置數組創建你的類的實例(有點像Guzzle,還有更多)。國際海事組織你永遠不應該有任何需要在作曲家插件做出的變化。它使他們更新絕對地獄。 – h2ooooooo
@ h2ooooooo,好點,但我仍然需要在某處存儲配置,並提供配置指令 – Andrei