1
中授予包含文件全局作用域的功能我被一些ABSTRACTION &咬過了ORGANIZATION bug,我決定使用一個名爲Loader的類在我的php應用程序中包含文件像這樣如何在一個函數內包含文件,並仍然在php
class Loader
{
public $loadedFiles=array();
public function isLoaded($fileName)
{
if(in_array($fileName,$this->loadedFiles))
return true;
else
return false;
}
public function load()
{
$fileList=func_get_args();
foreach ($fileList as $file)
{
if(!$this->isLoaded($file))
{
$flag=include(ROOT_DIR_PATH.'includes'.DS.$file);
if($flag)
{
$this->loadedFiles[]=$file;
}
else
return false;
}
}
}
}
現在我可以包括使用這樣的事情
$loader=new Loader();
$loader->load('db.class.php','utility.php','objects.php');
在我的應用程序文件,但問題是,現在通過上述方法包含的所有文件的功能,被授予日上述方法的範圍load
。現在我不能使用包含文件的任何功能。每當我使用上述包含文件的任何功能時,我會收到一條警告,說undefined function
。有什麼辦法可以將全局範圍授予包含文件的功能。
是路徑$ flag = include(ROOT_DIR_PATH.'includes'.DS。$ file);正確? – JackTurky 2012-01-17 13:59:43