Förenklad hantering av namnområden i OOP i PHP
Låt oss säga att vi har följande klass Controller:
<?php
namespace Admin;
class Controller
{
}
?>
Låt oss också säga att det finns en klass Page som ärver
från klassen Controller:
<?php
namespace Admin;
class Page extends \Admin\Controller
{
}
?>
Som du ser anger vi förälderns namn tillsammans med namnområdet. I detta exempel finns det dock en nyans: båda klasserna tillhör samma namnområde. I sådana fall kan vi när vi refererar till klassen helt enkelt skriva namnet på den klassen, så här:
<?php
namespace Admin;
class Page extends Controller
{
}
?>
Två klasser är givna:
<?php
namespace Modules\Shop;
class Cart
{
}
?>
<?php
namespace Modules\Shop;
class UserCart extends \Modules\Shop\Cart
{
}
?>
Förenkla koden för klassarvet, med hänsyn till det faktum att båda klasserna finns i samma namnområde.