Originariamente inviato da skidx
oltre a quanto già detto da andrea,
in php non viene chiamato il metodo del padre in automatico, devi farlo esplicitamente usando
giusto per la precisazione, solo in override o se serve quel metodo e non sempre



Codice PHP:
<?php
class {
    protected 
$test '';
    
    public final function 
__construct() {
        
$this->test 'Hello World!';
    }
    
    public final function 
getTest() {
        return 
$this->test;
    }
    
    public function 
__destruct() {
        echo 
'<hr />';
    }
}
$test = new A();
echo 
'[b]A[/b]
'
.$test->getTest();


class 
extends {}
$test = new B();
echo 
'[b]B[/b]
'
.$test->getTest();


class 
extends {
    
// questi due metodi sono accettati allo stesso modo
    
public final function getTest2() {
        return 
'2 => '.$this->getTest(); // uguale a parent::getTest
    
}
    public function 
getTest3() {
        return 
'3 => '.parent::getTest(); // uguale a $this->getTest
    
}
}
$test = new C();
echo  
'[b]C[/b]
'
.$test->getTest().'
'
.$test->getTest2().'
'
.$test->getTest3();


class 
extends {
    
//public final function __construct() {
        // parent::__construct();
        // errore, un metodo final non può avere override
    //}
        
    // getTest3 di C invece non è final
    
public final function getTest3() {
        
// override del metodo non final possibile
        
return 'Over '.parent::getTest3();
        
// in questo caso scrivere $this->getTest3 non avrebbe avuto senso
                // (quindi è il caso di cui parlava skidx)
    
}
    
    
// override del distruttore con chiamata a quello genitore
    
public function __destruct() {
        
parent::__destruct();
        echo 
'_____________________________________________ END ';
    }
}
$test = new D();
echo  
'[b]D[/b]
'
.$test->getTest3();
?>






[edit]
Originariamente inviato da nik600
credevo funzionasse come in java dove viene chiamato automaticamente.
cos'è che fa Java ? ... richiama in automatico un metodo del genitore anche se si sta scrivendo un override dello stesso, a prescindere che sia costruttore o meno ??? .... io penso che Java si comporti allo stesso modo del php 5 .... magari sbaglio ...