从函数[PHP]中调用数组中的多个参数

时间:2015-07-30 13:39:39

标签: php class

我试图使用数组从php中的函数调用多个参数。

ENTRYPOINT java -Djava.security.egd=file:/dev/./urandom -jar $APPLICATION_NAME

我创建了函数text(),如下所示:

Class useful {
    function callFunctionFromClass($className, $function, $args = array()) {
            return $className::$function($args);
     }
}

<?php
    require("library/class.php");

    $u = new useful;

    $u::callFunctionFromClass(new useful, "text", "Test", "Test");
?>

我收到此错误消息:

function text($msg, $msg2) {
    echo $msg;
    echo $msg2;
}

没有$ msg2&amp;第二个论点。那么如何取消多个论点呢?

1 个答案:

答案 0 :(得分:3)

您必须使用call_user_func_array。您也将callFunctionFromClass称为静态方法,但它不是静态的

Class useful
{
    public function callFunctionFromClass($className, $function, $args = array())
    {
        return call_user_func_array(array($className, $function), $args);
    }

    public function text($msg, $msg2)
    {
        echo $msg;
        echo $msg2;
    }
}

$u = new useful;

$test = $u->callFunctionFromClass('useful', "text", array("Test", "Test"));