Ciao, ho una domanda riguardante $ this.classi php estendere
class foo {
function __construct(){
$this->foo = 'bar';
}
}
class bar extends foo {
function __construct() {
$this->bar = $this->foo;
}
}
farebbe
$ob = new foo();
$ob = new bar();
echo $ob->bar;
risultato in bar
??
Chiedo solo perché pensavo che sarebbe, ma a parte il mio copione non sembra comportare quello che pensavo.
Un po 'strano, ma molto flessibile in quanto si può facilmente non sovraccaricare affatto (chiamare solo il genitore) , sovraccaricare parzialmente il costruttore (chiamandolo dal nuovo) o sovraccaricarlo completamente (non chiamarlo affatto). Quindi, anche se è strano rispetto ad altre lingue, questo non significa che sia strano che lo faccia (può essere visto come un enorme vantaggio) ... – ircmaxell
Quindi $ questo non ha significato in quanto viene chiamata la classe estesa? Pensavo che questo avrebbe portato con sé i suoi oggetti. –
No, $ continua a fare riferimento all'istanza corrente –