ReflectionMethod::invoke
実行する
説明
public mixed ReflectionMethod::invoke(objectnull $object
, mixed ...$args
)
パラメータ
-
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');
?>
注意
注意:
ReflectionMethod::invoke は、
リファレンスが引数に期待されている場合は使えません。
その場合は、(引数リストにリファレンスを渡して)
ReflectionMethod::invokeArgs を代わりに使うべきです。
参考
- ReflectionMethod::invokeArgs
- __invoke()
- call_user_func