我认为这是一个语法问题...我有一个类名数组,我在工厂中使用它来按对象类型代码生成对象:
$array = ['a' => '\namespace\AClass', 'b' => '\namespace\BClass'];
我可以从字符串名称中实例化这些类:
$classname = $array['a'];
return new $classname($arg1, $arg2);
我要做的是调用数组或字符串中指定的类的静态方法,而不必初始化对象 - 例如:
$classname = $array['a'];
return $classname::formatArg($arg1);
显然,这不起作用,因为$ classname是一个字符串,所以如何告诉PHP我试图访问具有该名称的对象?
答案 0 :(得分:0)
查看这篇文章。 How can I call a static method on a variable class?
看起来你的代码在php 5.3中没问题。如果你是<还有一些想法如何处理你的问题。 5.3。