Може да ви се наложи да пишете код, който се обръща към променливи и методи на базови класове. Това обикновено е така, когато наследеният клас е подобрение или конкретизация на код от базовия клас.
Вместо в кода да използвате конкретното име на базовия клас, можете да използвате специалното име parent, което представлява името на базовия клас, така както е указан в декларацията extends на класа. По този начин се избягва използването на името на базовия клас на повече от едно място. Ако трябва да се промени йерархията при наследяването, това може да се направи като просто се промени декларацията extends на класа.
<?php
class A {
function example() {
echo "Аз съм A::example() и осигурявам базова функционалност.<br />\n";
}
}
class B extends A {
function example() {
echo "Аз съм B::example() и осигурявам допълнителна функционалност.<br />\n";
parent::example();
}
}
$b = new B;
// Следният код ще извика B::example(), който от своя страна ще извика A::example().
$b->example();
?>