Uproszczone odwoływanie się do przestrzeni nazw w OOP w PHP
Załóżmy, że mamy następującą klasę Controller:
<?php
namespace Admin;
class Controller
{
}
?>
Załóżmy również, że istnieje klasa Page, dziedzicząca
po klasie Controller:
<?php
namespace Admin;
class Page extends \Admin\Controller
{
}
?>
Jak widzicie, przy dziedziczeniu wskazujemy nazwę rodzica wraz z przestrzenią nazw. W tym przykładzie istnieje jednak niuans: obie klasy należą do tej samej przestrzeni nazw. W takim przypadku przy odwoływaniu się do klasy można po prostu napisać nazwę tej klasy, o tak:
<?php
namespace Admin;
class Page extends Controller
{
}
?>
Dane są dwie klasy:
<?php
namespace Modules\Shop;
class Cart
{
}
?>
<?php
namespace Modules\Shop;
class UserCart extends \Modules\Shop\Cart
{
}
?>
Uprość kod dla dziedziczenia klasy, biorąc pod uwagę, że obie klasy znajdują się w jednej przestrzeni nazw.