次のようなクラスの新しいインスタンスを作成しようとしています:
$obj = new $class;
私は、関数の共通セットが多くのクラスに対してこれを行う方法でこれを行っていますが、今はいくつかの引数を実装しています。ハンドラー関数は次のようになりますが、
function newInst($argA = null, $argB = null, $argC = null)
これには、事前にすべての引数を含める必要があり、上限があります。だから、私はこのようなことをしようとしています:
function newInst() {
$obj = new $class(func_get_args());
...
}
しかし、最初の引数だけが適用されるのではなく、配列を引数のセットとして適用したいと思います。私が試してみました
function newInst() {
$obj = new $class;
call_user_func_array(array($obj, '__construct'), func_get_args());
...
}
しかし、それは__construct
関数を2回呼び出します。__construct
では、呼び出された関数の引数を使用して、インスタンス化中にorclassname
関数を通過する新しいインスタンスを作成する方法はありますか?