在PHP中使用字符串作为对象名

在PHP中使用字符串作为对象名,php,string,object,Php,String,Object,我想在PHP中使用字符串作为对象名。 例如: $name = 'utils'; $obj = new $name(); $utils->test(); 因此,我希望能够通过字符串的名称调用对象,因为我事先不知道类名 我如何才能做到这一点?请尝试以下方法: $name = 'utils'; $$name = new $name(); 有关更多信息,请参见有问题吗?鉴于您实际上是在$obj上调用测试方法,而不是在未定义的$utils上调用测试方法,上述方法可以解决问题。您能否添加一个快速解

我想在PHP中使用字符串作为对象名。 例如:

$name = 'utils';
$obj = new $name();
$utils->test();
因此,我希望能够通过字符串的名称调用对象,因为我事先不知道类名

我如何才能做到这一点?

请尝试以下方法:

$name = 'utils';
$$name = new $name();

有关更多信息,请参见

有问题吗?鉴于您实际上是在$obj上调用测试方法,而不是在未定义的$utils上调用测试方法,上述方法可以解决问题。您能否添加一个快速解释?
Class Foo {
 function bar(){
   return 'text';
 }
}

$name = 'Foo';
$obj = new $name();
echo $obj->bar();