类名称中的变量

时间:2013-07-10 01:26:21

标签: php class variables

我需要创建一个新对象,该类以例如' Statistics1' - ' 1'我得到了一个变量,所以我需要这样的东西:

$table = new Statistics${$mode};

它不起作用。对于变量变量,我使用:

$var = ${"text" . $second_var};

但这次它不是变量。

2 个答案:

答案 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);