実行する

# ReflectionMethod::invokeArgs

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

ReflectionMethod::invokeArgs — 実行する

### 説明

public function ReflectionMethod::invokeArgs(?object `$object`, array `$args`): mixed

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

### パラメータ

`object`

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

`args`

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

### 戻り値

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

### エラー / 例外

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

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

### 変更履歴

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

### 例

例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

### 注意

> 注意:

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

### 参考

- ReflectionMethod::invoke() - 実行する
- __invoke()
- call_user_func_array() - パラメータの配列を指定してコールバック関数をコールする

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open