我需要创建一个新对象,该类以例如' Statistics1' - ' 1'我得到了一个变量,所以我需要这样的东西:
$table = new Statistics${$mode};
它不起作用。对于变量变量,我使用:
$var = ${"text" . $second_var};
但这次它不是变量。
答案 0 :(得分:3)
我更喜欢反思,因为它更容易捕获异常:
$reflector = new ReflectionClass('Statistics'.$mode);
$table = $reflector->newInstance($arg1, $arg2);
答案 1 :(得分:3)
班级名称可以是变量since PHP5.3
更改:现在可以使用变量引用类(例如,echo $ classname :: constant;)。变量的值不能是关键字(例如,self,parent或static)。
示例代码看起来像这样。
class foo1
{}
$one = 1;
$class_name = 'foo' . $one;
$bar = new $class_name;
var_dump($bar);