オプションの配列を格納するクラスでプロパティをよく使用します。親クラスで宣言されたデフォルトからこれらのオプションを何とかマージできるようにしたいと思います。
私はいくつかのコードを示しました。
class A
{
public $options = array('display'=>false,'name'=>'John');
}
class B extends A
{
public $options = array('name'=>'Mathew');
}
を作成するときに、からのマージされた配列をB
含めたい$options
A::options
今起こっていることはこれです。
$b = new B();
print_r($b);
array('name'=>'Mathew');
を使ってこのようなものが欲しいarray_merge_recursive()
です。
array('display'=>false,'name'=>'Mathew');
- 多分それはコンストラクタでできることでしょうか?
- これを の動作にすることは可能
class A
ですか? そのため、すべてのサブクラスで常に同じコードを実装する必要はありません。 - リフレクションを使用して、両方のクラスで配列プロパティを自動検索してマージできますか?