声明命名空间别名

时间:2014-07-04 19:25:38

标签: php import namespaces declaration require

我想编写一些代码来导入和“使用”(设置别名)到由命名空间分隔的类中。

该程序的通常常规方法是:

 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');自动化。

该行似乎有一些语法错误,并且不适合。有没有一种方法可以用来实现这个功能?

1 个答案:

答案 0 :(得分:0)

PHP manual

  

必须在文件的最外层范围内声明use关键字(   全局范围)或内部命名空间声明。这是因为   导入是在编译时完成的,而不是运行时,因此不能   块范围。