獨立配置
獨立配置文件
配置文件支持分離(也稱為擴展配置),只需要在公共配置文件配置
extra_config_list參(can)數(V5.0版本(ben)已經廢除(chu)該寫法)。
例如,不使用獨立配置文件的話,數據庫配置信息應該是在config.php中配置如下:
/* 數據庫設(she)置(zhi) */
'database' => [
// 數據(ju)庫類型(xing)
'type' => 'mysql',
// 服務器地址
'hostname' => '127.0.0.1',
// 數據(ju)庫名
'database' => 'ThinkPHP',
// 數據庫用戶名
'username' => 'root',
// 數據庫密碼
'password' => '',
// 數據庫連(lian)接端(duan)口(kou)
'hostport' => '',
// 數據庫連接參數
'params' => [],
// 數據庫編碼默認采(cai)用utf8
'charset' => 'utf8',
// 數據庫表(biao)前綴
'prefix' => '',
// 數據庫(ku)調試(shi)模式
'debug' => false,
],
如(ru)果需要使用(yong)獨立配置(zhi)文件(jian)的話,則首先在config.php中(zhong)添加配置(zhi):
'extra_config_list' => ['database'],
定義之后,數據庫配置就可以獨立使用database.php文件,配(pei)置內容如下(xia):
/* 數據庫設置 */
return [
// 數據庫(ku)類型(xing)
'type' => 'mysql',
// 服(fu)務器地址
'hostname' => '127.0.0.1',
// 數(shu)據庫名
'database' => 'ThinkPHP',
// 數(shu)據(ju)庫(ku)用(yong)戶名
'username' => 'root',
// 數(shu)據庫密碼(ma)
'password' => '',
// 數據(ju)庫(ku)連(lian)接端(duan)口(kou)
'hostport' => '',
// 數據(ju)庫連接(jie)參數
'params' => [],
// 數(shu)據庫(ku)編碼默(mo)認采用utf8
'charset' => 'utf8',
// 數據庫表前綴
'prefix' => '',
// 數據(ju)庫(ku)調試模式
'debug' => false,
],
如果配置了extra_config_list參數,并同時在config.php和database.php文件中都配置的話,則database.php文件的配置會覆蓋config.php中的設置。
獨立配置文件的參數獲取都是二維配置方式,例如,要獲取database獨立配置文件的type參數,應該是:
Config::get('database.type');
要獲取(qu)完整的獨立配置文(wen)件的參數,則(ze)使用(yong):
Config::get('database');
自動讀取擴展配置
版本要求
V5.0
5.0以上版本支持自動讀取擴展配置文件(extra_config_list配置參數廢棄),只需要將擴展配置文件放入application/extra目錄(lu),即可自(zi)動讀(du)取。
自動讀(du)取(qu)的(de)配(pei)(pei)置(zhi)文(wen)件都是二(er)級配(pei)(pei)置(zhi)參數,一級配(pei)(pei)置(zhi)名稱就是擴展配(pei)(pei)置(zhi)的(de)文(wen)件名。
模塊也可以支持自己的擴展配置文件,只需要放入 application/模塊名/extra下(xia)面就(jiu)可(ke)以自動加載。
系統默認(ren)加載的(de)獨立配置文件不在此列,包括:
| 文件名 | 描述 |
|---|---|
| config | 應用或者模塊配置文件 |
| database | 數據庫配置文件 |
| tags | 行為定義文件 |
| 場景名 | 應用場景配置文件 |
如果你更改了
CONF_PATH,那么擴展配置文件目錄應該是CONF_PATH/extra,模塊配置目錄則變成CONF_PATH/module/,模塊的擴展配置目錄則變成CONF_PATH/module/extra。
