(PHP 5 >= 5.1.2, PHP 7, PHP 8)
ReflectionMethod::invokeArgs — Вызов метода с передачей аргументов массивом
Вызывает отражённый метод и передаёт ему аргументы в виде массива.
object
Объект, метод которого вызывается. Если метод статический, можно передать null.
args
Массив (array), содержащий аргументы функции.
Возвращает результат выполнения метода.
Выбрасывает исключение ReflectionException, если в объекте
object
нет определения этого метода.
Выбрасывает исключение ReflectionException, если вызвать метод на исполнение не удалось.
Версия | Описание |
---|---|
8.0.0 |
Ключи args теперь интерпретируются как имена параметров, а не игнорируются.
|
Пример #1 Пример использования ReflectionMethod::invokeArgs()
<?php
class HelloWorld {
public function sayHelloTo($name) {
return 'Привет, ' . $name;
}
}
$reflectionMethod = new ReflectionMethod('HelloWorld', 'sayHelloTo');
echo $reflectionMethod->invokeArgs(new HelloWorld(), array('Майк'));
?>
Результат выполнения данного примера:
Привет, Майк
Замечание:
Если функция имеет аргументы, которые должны быть ссылками, то они должны быть ссылками и в переданном спике аргументов.