Вы и сами могли заметить, что при написании кода обращаетесь к переменным и
функциям в базовых классах. Это особенно верно в отношении классов, которые вы
получили в результате очистки или специализации кода в вашем базовом классе.
Вместо использования в вашем коде литерального имени базового класса, используйте лучше специальное имя
parent, которое обращается к имени вашего базового класса, как оно дано в объявлении extends в вашем классе. Сделав это, вы исключите использование имени вашего базового
класса в более чем одном месте. Если дерево наследования в ходе реализации
должно измениться, это изменение можно легко сделать, изменив лишь объявление extends вашего класса.
class A
{
function example()
{
echo "I am A::example() and provide basic functionality.<br>
";
}
}
class B extends A
{
function example()
{
echo "I am B::example() and provide additional functionality.<br>
";
parent::example();
}
}
$b = new B;
// Здесь будет сделан вызов B::example(), который, в свою очередь, вызовет A::example().
$b->example();