从带有命名空间的变量构造类

时间:2016-01-09 15:31:31

标签: php

我想构建的类有一个名称空间,例如:\class_name

所以现在我想知道如何用PHP构建该类。

我试过了:

$class_name = 'class_name';
new \$class_name();

但我收到错误:

  

解析错误:语法错误,意外'$ class_name'(T_VARIABLE)

如何解决此错误?

1 个答案:

答案 0 :(得分:0)

您需要manual中所述的变量中的完整班级名称:

  

必须使用完全限定名称(带名称空间前缀的类名)。请注意,因为动态类名,函数名或常量名中的限定名和完全限定名之间没有区别,所以不需要前导反斜杠。

所以这样做:

$class_name = '\class_name';
new $class_name();