Vedere il seguente esempio (PHP)Accesso classe genitore proprietà dal bambino
class Parent
{
protected $_property;
protected $_anotherP;
public function __construct($var)
{
$this->_property = $var;
$this->someMethod(); #Sets $_anotherP
}
protected function someMethod()
...
}
class Child extends Parent
{
protected $parent;
public function __construct($parent)
{
$this->parent = $parent;
}
private function myMethod()
{
return $this->parent->_anotherP; #Note this line
}
}
Sono nuovo di programmazione orientata agli oggetti e sono un po 'ignorante.
Qui per accedere alla proprietà dei genitori Sto usando un'istanza di quella classe, che sembra sbagliata: S (non c'è bisogno di essere io bambino allora). C'è un modo semplice, in modo che io possa sincronizzare le proprietà genitore con le proprietà figlio e posso accedere direttamente a $ this-> anotherP senza dover usare $ this-> parent-> anotherP?
sì. La chiamata al genitore :: __ costrutto era ciò di cui avevo bisogno: O – shxfee
Oh, sì, questa è una delle cose complicate, e non pensavo di menzionarlo: se la classe del tuo bambino definisce un costruttore, PHP non chiamerà il costruttore della classe genitore - il che significa che dovrai chiamarlo tu stesso * (vedi la nota su http://fr.php.net/manual/en/language.oop5.decon.php) * –