我想编写一些代码来导入和“使用”(设置别名)到由命名空间分隔的类中。
该程序的通常常规方法是:
require_once('/tools/toola/mytool.php');
use tools\toola\MyTool as MyTool;
是否有可能拥有这样的东西?
function import($path, $class_name) {
$file_path = strtolower($path . '/' . $class_name . '.php');
if(file_exists($file_path)) {
require_once($file_path);
use $file_path as $class_name; //Line currently throws syntax error
} else { //file not found }
}
因此,我可以调用import('/ tools / toola','mytool');自动化。
该行似乎有一些语法错误,并且不适合。有没有一种方法可以用来实现这个功能?
答案 0 :(得分:0)
必须在文件的最外层范围内声明use关键字( 全局范围)或内部命名空间声明。这是因为 导入是在编译时完成的,而不是运行时,因此不能 块范围。