Vereinfachter Zugriff auf Namensräume in OOP in PHP
Nehmen wir an, wir haben die folgende Klasse Controller:
<?php
namespace Admin;
class Controller
{
}
?>
Nehmen wir auch an, es gibt eine Klasse Page, die
von der Klasse Controller erbt:
<?php
namespace Admin;
class Page extends \Admin\Controller
{
}
?>
Wie Sie sehen, geben wir beim Vererbung den Namen des Elternteils zusammen mit dem Namensraum an. In diesem Beispiel gibt es jedoch eine Nuance: Beide Klassen gehören zum selben Namensraum. In diesem Fall kann beim Zugriff auf eine Klasse einfach der Name dieser Klasse geschrieben werden, wie hier:
<?php
namespace Admin;
class Page extends Controller
{
}
?>
Gegeben sind zwei Klassen:
<?php
namespace Modules\Shop;
class Cart
{
}
?>
<?php
namespace Modules\Shop;
class UserCart extends \Modules\Shop\Cart
{
}
?>
Vereinfachen Sie den Code für die Klassenvererbung unter Berücksichtigung, dass sich beide Klassen im selben Namensraum befinden.