一尘不染

PHP中的动态静态方法调用?

php

请具有PHP经验的人提供以下帮助。在我的代码中的某个地方,我调用了一个非实例化类中的公共静态方法:

$result = myClassName::myFunctionName();

但是,我希望有许多这样的类,并根据用户的语言即时确定正确的类名称。换句话说,我有:

$language = 'EN';

…,我需要做类似的事情:

$result = myClassName_EN::myFunctionName();

我知道我可以将语言作为参数传递给函数,并在一个通用类中处理它,但是由于种种原因,我希望使用其他解决方案。

有人吗?谢谢。


阅读 612

收藏
2020-05-29

共1个答案

一尘不染

使用call_user_func函数:

http://php.net/manual/zh/function.call-user-
func.php

例:

call_user_func('myClassName_' . $language . '::myFunctionName');
2020-05-29