Forum und email

parent

Você pode se encontrar escrevendo código que precisa referenciar a variáveis e funções na classe base. Isto é particularmente verdade se você derivou uma classe como um refinamento ou especialização de código de sua classe base.

Em vez de utilizar o nome literal da classe base em seu código, você pode usar o nome especial parent, que se refere ao nome da sua classe base como informado na declaração extends. Fazendo isso, evita assim a utilização do nome da sua classe base em mais de um lugar. Se sua árvore de herança mudar durante a implementação, a modificação é mais facilmente realizada pela simples alteração da declaração extends de suas classes.

<?php
class {
    function 
exemplo() {
        echo 
"Eu sou A:exemplo() e provenho funcionalidades básicas.<br />\n";
    }
}

class 
extends {
    function 
exemplo() {
        echo 
"Eu sou B::exemplo() e provenho funcionalidades adicionais.<br />\n";
        
parent::exemplo();
    }
}

$b = new B;

// Isto ira chamar B::exemplo(), que por sua vez chama A::exemplo().
$b->exemplo();
?>