子クラスから呼び出しなし親クラスの自動実行構築物と(?):どのように私は自動魔法の子クラスから親クラスのコンストラクタを呼び出すための方法を探しています
(注:これは私は避けたいのは(__construct($args) { parent::__construct($args); }
)クラスはmyChildの内側を呼び出すために持っている
Class myParent()
{
protected $html;
function __construct($args)
{
$this->html = $this->set_html($args);
}
protected function set_html($args)
{
if ($args['foo'] === 'bar')
$args['foo'] = 'foobar';
return $args;
}
}
Class myChild extends myParent
{
public function do_stuff($args)
{
return $this->html;
}
}
Class myInit
{
public function __construct($args)
{
$this->get_stuff($args);
}
public function get_stuff($args)
{
$my_child = new myChild();
print_r($my_child->do_stuff($args));
}
}
$args = array('foo' => 'bar, 'what' => 'ever');
new myInit($args);
// Should Output:
/* Array('foo' => 'foobar', 'what' => 'ever') */
)ので、エラーが存在することができる入力して、単なる一例です。
質問:これは可能ですか?もしそうなら:どのように?
ありがとうございます! Child
として
なぜあなたは 'parent :: __ construct()'を呼び出すことに反対していますか? – cspray
私はPHPも魔法のように私のアプリケーションを記述したいと思います。 –
@Wesley van Opdorp解決策をご覧ください。私のために働く。 @Charles Sprayberry私は未知数の子クラスによって拡張された基本クラスを持っているので、すべての入力引数(無効な入力の破棄、デフォルトの解析など)に対して標準のプロシージャを実行する必要があります – kaiser