我想知道是否可能调用父级__construct(),在孩子的__construct()与PHP中的继承。
例:
class Tag {
__construct() {
// Called first.
}
}
class Form extends Tag {
__construct() {
// Called second.
}
}
new Form();
理想情况下,我可以在他们之间做一些事情。如果这是不可能的,有没有替代,这将允许我这样做?
我想这样做的原因是能够加载一系列特定于标签的窗体在调用__construct()时可以使用的默认设置。
编辑:对不起,忘记添加这..我宁愿不从子类调用父类。这只是因为当你作为参数传递它时,它暴露一些私人数据(对于父的)给孩子
这是我想做的:
$tag = new Tag($privateInfo, $publicInfo);
$tag->extend(new Form()); // Ideal function, prob doesn't work with inheritance.
Tag.php
class Tag {
private $privateInfo;
public $publicInfo;
__construct($private, $public) {
$this->privateInfo = $private;
$this->publicInfo = $public;
}
}
Form.php
class Form extends Tag {
__construct() {
echo $this->publicInfo;
}
}
合理?
谢谢!
马特·米勒