(PHP 5 >= 5.1.2, PHP 7, PHP 8)
ReflectionMethod::invokeArgs — Invoke args
Invokes the reflected method and pass its arguments as array.
objectThe object to invoke the method on. In case of static methods, you can pass null to this parameter.
argsThe parameters to be passed to the method, as an array.
If the keys of args are all numeric, the keys are
ignored and each element is passed to the method as a positional
argument, in order.
If any keys of args are strings, those elements are
passed to the method as named arguments, with the name given by the
key.
An Error is thrown if a numeric key in
args appears after a string key, or if a string key
does not match the name of any parameter of the method.
Returns the method result.
A ReflectionException if the object
parameter does not contain an instance of the class that this method was declared in.
A ReflectionException if the method invocation failed.
| Версія | Опис |
|---|---|
| 8.0.0 |
args keys will now be interpreted as parameter names, instead of being silently ignored.
|
Приклад #1 ReflectionMethod::invokeArgs() example
<?php
class HelloWorld {
public function sayHelloTo($name) {
return 'Hello ' . $name;
}
}
$reflectionMethod = new ReflectionMethod('HelloWorld', 'sayHelloTo');
echo $reflectionMethod->invokeArgs(new HelloWorld(), array('Mike'));
?>Поданий вище приклад виведе:
Hello Mike
Зауваження:
У переданому списку параметрів мають бути посилання, якщо функція очікує параметри-посилання.