ReflectionClass::newInstanceArgs

指定した引数でクラスの新しいインスタンスを作成する

説明

public objectnull ReflectionClass::newInstanceArgs(array $args = [])

クラスの新しいインスタンスを作成します。指定した引数をクラスのコンストラクタに渡します。

パラメータ

args

クラスのコンストラクタに渡すパラメータを配列で指定します。

戻り値

クラスの新しいインスタンスを返します。 失敗した場合は null を返します。

エラー / 例外

コンストラクタが public でない場合は ReflectionException が発生します。

クラスにコンストラクタがないときに args を指定すると ReflectionException が発生します。

例1 ReflectionClass::newInstanceArgs の基本的な使用例

<?php
$class = new ReflectionClass('ReflectionFunction');
$instance = $class->newInstanceArgs(array('substr'));
var_dump($instance);
?>

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

object(ReflectionFunction)#2 (1) {
  ["name"]=>
  string(6) "substr"
}

参考

  • ReflectionClass::newInstance
  • ReflectionClass::newInstanceWithoutConstructor