Forum und email

parent (Γονέας)

Μπορεί να τύχει να γράψετε κώδικα που θα αναφέρεται σε μεταβλητές και συναρτήσεις στις βασικές κλάσεις. Αυτό είναι εν μέρει αλήθεια αν οι προκύπτουσες κλάσεις είναι μια εκλέπτυνση του κώδικα της βασικής σας κλάσης.

Αντί να χρησιμοποιείτε το κανονικό όνομα της βασικής σας κλάσης στον κώδικα σας, θα πρέπει να χρησιμοποιείτε το ιδιαίτερο όνομα parent, το οποίο αναφέρεται στο όνομα της βασικής σας κλάσης όπως αυτή δίνεται στη δήλωση extends της κλάσης σας. Κάνοντας το αυτό, αποφεύγετε να χρησιμοποιήσετε το όνομα της βασικής σας κλάσης σε περισσότερα από ένα μέρη. Σε περίπτωση που αλλάξει το δέντρο κληρονομικότητας κατά τη διάρκεια της υλοποίησης, η αλλαγή γίνεται εύκολα απλά αλλάζοντας τη δήλωση extends της κλάσης σας.

<?php
class A
{
    function 
example()
    {
        echo 
"I am A::example() and provide basic functionality.<br>\n";
    }
}

class 
extends A
{
    function 
example()
    {
        echo 
"I am B::example() and provide additional functionality.<br>\n";
        
parent::example();
    }
}

$b = new B;

// This will call B::example(), which will in turn call A::example().
$b->example();
?>