在php

时间:2019-04-15 16:40:57

标签: php namespaces

我想在带有前缀名称空间的PHP中使用变量类名。

我尝试过的三个变体会在最后一个反斜杠之后产生标识符错误。

(\api\controllers\(new $class()))->{$method}($this->id);

((new \api\controllers\$class()))->{$method}($this->id);

((new \api\controllers\{$class()}))->{$method}($this->id));

我如何进行这项工作?

1 个答案:

答案 0 :(得分:1)

如何?

$full_class_name = '\api\controllers\' . $class;
$controller = new $full_class_name();
$controller->{$method}($this->id);

可能可以将其缩短一些,但是在这里这样做可能会使答案变得更加晦涩难懂而没有帮助。