Учебник РНР
Назад Глава 13. Классы и Объекты Вперёд

parent

Вы и сами могли заметить, что при написании кода обращаетесь к переменным и функциям в базовых классах. Это особенно верно в отношении классов, которые вы получили в результате очистки или специализации кода в вашем базовом классе.

Вместо использования в вашем коде литерального имени базового класса, используйте лучше специальное имя parent, которое обращается к имени вашего базового класса, как оно дано в объявлении extends в вашем классе. Сделав это, вы исключите использование имени вашего базового класса в более чем одном месте. Если дерево наследования в ходе реализации должно измениться, это изменение можно легко сделать, изменив лишь объявление extends вашего класса.

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

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

$b = new B;

// Здесь будет сделан вызов B::example(), который, в свою очередь, вызовет A::example().
$b->example();


Назад Оглавление Вперёд
:: Вверх Сериализация объектов - объекты в сессиях