Релативни патеки во именскиот простор во ООП во PHP
Нека во датотеката index.php се случува
следниот повик:
<?php
namespace Admin\Data;
new \Core\Controller;
?>
Како што веќе знаете, при пристапување до класа пред нејзиниот именски простор треба да се пишува обратна коса црта. Всушност, ова не е задолжително. Ако оваа коса црта не се напише, тогаш повиканиот именски простор ќе се пресмета релативно во однос на тековниот именски простор. Погледнете го примерот:
<?php
namespace Admin\Data;
new Core\Controller; // еквивалентно на \Admin\Data\Core\Controller
?>
Дадени се две класи:
<?php
namespace Modules\Shop\Core;
class Cart
{
}
?>
<?php
namespace Modules\Shop;
class UserCart extends \Modules\Shop\Core\Cart
{
}
?>
Поедноставете го кодот за наследување на класата, земајќи го предвид фактот дека именските простори на нашите класи имаат заеднички дел.
Дадени се две класи:
<?php
namespace Core\Data;
class Controller
{
}
?>
<?php
namespace Core\Data;
class Model
{
}
?>
Вака се креираат објекти од овие класи во
датотеката index.php:
<?php
namespace Core\Data;
$controller = new \Core\Data\Controller;
$model = new \Core\Data\Model;
?>
Поедноставете го кодот за креирање на објекти, земајќи го предвид именскиот простор во кој се креираат објекти од нашите класи.