如何用参数调用当前类的方法?

时间:2017-07-12 08:45:25

标签: php class

array($this, 'methodName');

这是我调用当前类方法的方法。但我希望传递一个字符串类型的参数。我该怎么做呢?

call_user_func_array used传递参数数组

我试过了:

array($this, "{methodName}($param)");

But it says method is not found

1 个答案:

答案 0 :(得分:0)

要将一个方法作为回调与一个参数一起传递给一个值,anonymous function最好:

$param = 'foo';
$callback = function () use ($param) {
    return $this->methodName($param);
};

如果回调应该接受其他参数:

$callback = function ($more) use ($param) {
    return $this->methodName($param, $more);
};
可以通过调用$callback的任何机制调用

callables,例如call_user_func($callback)或仅$callback()

请注意,这在PHP 5.4之前的古老版本中不起作用。