【发布时间】:2015-04-15 07:33:47
【问题描述】:
我正在尝试做一个简单的配置类来从配置文件中读取数组。 在哪里包含具有 return array() 内容的文件。很简单。
我想我会稍微扩展一下以使用点表示法,第一个元素是文件名。但是,如果您尝试访问同一个文件中的数据两次,它会尝试再次包含该文件,但这是行不通的。
public static function get($path=null,$ext='php'){
if(!$path)return false;
$path = explode('.',$path);
$file = $path[0] . '.' . $ext;
//remove file name.
unset($path[0]);
$files = scandir(CONFIG);
if(in_array($file,$files)){
$data = include_once(CONFIG.$file);
foreach($path as $element){
if(isset($data[$element])){
$data = $data[$element];
}
}
return $data;
} else {
return false;
}
}
只要您不再需要该文件中的任何其他内容,它就可以很好地工作。这里有一个简单的解决方法,还是我完全湿了?
【问题讨论】:
-
如果将
include_once替换为include,则可以多次使用该文件。 -
WTH。我试了几次都没有用,但现在突然它起作用了......??任何。谢谢你。
标签: php configuration