Php 在类名中使用变量?

Php 在类名中使用变量?,php,namespaces,Php,Namespaces,因此,我定义了一些名称空间,并希望引用如下新对象: $this->controller = new \controller\$this->controller($this->cfg); 但是我有一个 分析错误:语法错误,意外的“$this”(T_变量),需要标识符(T_字符串) 我如何才能做到这一点?看起来您正在尝试动态确定要实例化的对象的类名。为此,您可以创建一个包含类名字符串的变量,然后对该变量进行实例化: $string = $someObject->someMe

因此,我定义了一些名称空间,并希望引用如下新对象:

$this->controller = new \controller\$this->controller($this->cfg);
但是我有一个

分析错误:语法错误,意外的“$this”(T_变量),需要标识符(T_字符串)


我如何才能做到这一点?

看起来您正在尝试动态确定要实例化的对象的类名。为此,您可以创建一个包含类名字符串的变量,然后对该变量进行实例化:

$string = $someObject->someMethod();
$class = '\\controller\\' . $string;
$newObject = new $class();

这是一个非常奇怪的问题,如果你描述导致这一点的情况可能会更好,因为找到解决问题的方法将比解决所述问题更有成效。