PHP 调用静态方法时使用变量

2023-12-12

我有三个类,它们都有一个名为“create”的静态函数。 我想根据表单的输出动态调用适当的函数,但在语法上遇到了一些问题。无论如何可以执行此操作吗?

$class = $_POST['class'];
$class::create();

任何建议将不胜感激。

Thanks.


如果您使用 PHP 5.2,则可以使用call_user_func (or call_user_func_array) :

$className = 'A';

call_user_func(array($className, 'method'));

class A {
    public static function method() {
        echo 'Hello, A';
    }
}

会给你:

Hello, A


您在问题中使用的语法仅适用于 PHP >= 5.3 ;请参阅手册页静态关键字, 关于那个 :

从 PHP 5.3.0 开始,可以 使用变量引用该类。 变量的值不能是 关键字(例如 self、parent 和 静止的)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP 调用静态方法时使用变量 的相关文章

随机推荐