php:通过变量调用静态类

sma*_*007 6 php

有没有办法按名称调用静态类/方法?

例:

$name = 'StaticClass';
($name)::foo();
Run Code Online (Sandbox Code Playgroud)

我有一些类,我保留所有静态方法,我想用这种方式调用它们.

Kor*_*nel 19

$name::foo()
Run Code Online (Sandbox Code Playgroud)

从PHP5.3开始是可能的.在早期版本中,您必须使用

call_user_func(array($classname,$methodname))
Run Code Online (Sandbox Code Playgroud)


小智 6

你可以使用call_user_func函数做这样的事情

它看起来像下面这样

$name = 'staticClass';
call_user_func(array($name, 'foo'));
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助