ReflectionMethod::invokeArgs

(PHP 5 >= 5.1.2, PHP 7, PHP 8)

ReflectionMethod::invokeArgs実行する

説明

publicReflectionMethod::invokeArgs(?object$object, array$args): mixed

リフレクション対象のメソッドを実行し、その引数を配列として渡します。

パラメータ

object

メソッドを実行するオブジェクト。staticメソッドを実行する場合は、このパラメータには null を渡すことができます。

args

メソッドに渡すパラメータを配列で指定します。

戻り値

メソッドの結果を返します。

エラー / 例外

メソッドが宣言されているクラスのインスタンス以外を object パラメータで指定すると ReflectionException が発生します。

メソッドの実行に失敗すると ReflectionException が発生します。

変更履歴

バージョン説明
8.0.0args のキーは、 静かに無視されるのではなく、パラメータの名前として解釈されるようになりました。

例1 ReflectionMethod::invokeArgs() の例

<?php
class HelloWorld {

public function
sayHelloTo($name) {
return
'Hello ' . $name;
}

}

$reflectionMethod = new ReflectionMethod('HelloWorld', 'sayHelloTo');
echo
$reflectionMethod->invokeArgs(new HelloWorld(), array('Mike'));
?>

上の例の出力は以下となります。

Hello Mike

注意

注意:

関数の引数の中にリファレンス渡しを要するものがある場合は、 渡す引数の中でもリファレンスにしておく必要があります。

参考

To Top