引数を指定して関数を起動する

# ReflectionFunction::invokeArgs

(PHP 5 >= 5.1.2, PHP 7)

ReflectionFunction::invokeArgs — 引数を指定して関数を起動する

### 説明

public ReflectionFunction::invokeArgs ( array `$args` ) : mixed

関数を起動して、その引数を配列として渡します。

### パラメータ

`args`

  関数に渡す引数を含む配列。 call_user_func_array() と同じように動作します。

### 返り値

起動した関数の結果を返します。

### 例

例1 ReflectionFunction::invokeArgs() の例

`<?php
function title($title, $name)
{
return sprintf("%s. %s\r\n", $title, $name);
}
$function = new ReflectionFunction('title');
echo $function->invokeArgs(array('Dr', 'Phil'));
?>`

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

    Dr. Phil

例2 ReflectionFunction::invokeArgs() で参照を使う例

`<?php
function get_false_conditions(array $conditions, array &$false_conditions)
{
foreach ($conditions as $condition) {
if (!$condition) {
$false_conditions[] = $condition;
}
}
}
$function_ref = new ReflectionFunction('get_false_conditions');
$conditions = array(true, false, -1, 0, 1);
$false_conditions = array();
$function_ref->invokeArgs(array($conditions, &$false_conditions));
var_dump($false_conditions);
?>`

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

    array(2) {
      [0]=>
      bool(false)
      [1]=>
      int(0)
    }

### 注意

> 注意:

> 関数の引数の中に参照渡しを要するものがある場合は、 渡す引数の中でも参照にしておく必要があります。

### 参考

- ReflectionFunction::invoke() - 関数を起動する
- ReflectionFunctionAbstract::getNumberOfParameters() - パラメータ数を取得する
- __invoke()
- call_user_func_array() - パラメータの配列を指定してコールバック関数をコールする