PHP按类名调用类的静态方法

时间:2014-10-16 14:59:47

标签: php

我认为这是一个语法问题...我有一个类名数组,我在工厂中使用它来按对象类型代码生成对象:

$array = ['a' => '\namespace\AClass', 'b' => '\namespace\BClass'];

我可以从字符串名称中实例化这些类:

$classname = $array['a'];
return new $classname($arg1, $arg2);

我要做的是调用数组或字符串中指定的类的静态方法,而不必初始化对象 - 例如:

$classname = $array['a'];
return $classname::formatArg($arg1);

显然,这不起作用,因为$ classname是一个字符串,所以如何告诉PHP我试图访问具有该名称的对象?

1 个答案:

答案 0 :(得分:0)

查看这篇文章。 How can I call a static method on a variable class?

看起来你的代码在php 5.3中没问题。如果你是<还有一些想法如何处理你的问题。 5.3。