(PHP 5, PHP 7, PHP 8)
ReflectionMethod::invoke — 実行する
object
メソッドを実行するオブジェクト。staticメソッドを実行する場合は、このパラメータには null を渡すことができます。
args
メソッドに渡すパラメータ。可変長のパラメータを渡すことができます。
メソッドの結果を返します。
メソッドが宣言されているクラスのインスタンス以外を object
パラメータで指定すると ReflectionException が発生します。
メソッドの実行に失敗すると ReflectionException が発生します。
例1 ReflectionMethod::invoke() の例
<?php
class HelloWorld {
public function sayHelloTo($name) {
return 'Hello ' . $name;
}
}
$reflectionMethod = new ReflectionMethod('HelloWorld', 'sayHelloTo');
echo $reflectionMethod->invoke(new HelloWorld(), 'Mike');
?>
上の例の出力は以下となります。
Hello Mike
注意:
ReflectionMethod::invoke() は、 リファレンスが引数に期待されている場合は使えません。 その場合は、(引数リストにリファレンスを渡して) ReflectionMethod::invokeArgs() を代わりに使うべきです。