如何从特定文件夹加载配置,例如:
DOCROOT."assets/config/pre-load.php"
默认方法将搜索
(APPPATH|MODPATH|SYSPATH)."/config/".DOCROOT."assets/config/pre-load"
,
但我需要从(APPPATH|MODPATH|SYSPATH)."/config/"
答案 0 :(得分:1)
默认行为是优先搜索'APPPATH.'config/'
,并可在您的application/bootstrap.php
文件中进行自定义。默认的bootstrap文件评论很好。
/**
* Attach a file reader to config. Multiple readers are supported.
*/
Kohana::$config->attach(new Config_File);
您可以在之前(或之后,根据您的需要)添加新的配置文件目录(相对于您还可以重新定义的所有Kohana::$_paths
,默认为array(APPPATH, SYSPATH)
。
例如,
/**
* Attach a file reader to config. Multiple readers are supported.
*/
Kohana::$config->attach(new Config_File);
Kohana::$config->attach(new Config_File('../assets/config'));
如果你想稍后在代码中添加它(比如在你的控制器初始化中),只需添加你想要的行。如果仅在缺少所有其他配置时才使用配置文件,请对attach方法的第二个参数使用FALSE(您可以在system/classes/Kohana/Config.php
或system/classes/Kohana/Config/File/Reader.php
的php文件中看到注释。)