⊗ppOpNsRPt 100 of 107 menu

PHP da OOP da Namespace lardagi nisbiy yo'llar

Faraz qilaylik, index.php faylida quyidagi chaqiruv amalga oshiriladi:

<?php namespace Admin\Data; new \Core\Controller; ?>

Siz bilganingizdek, class ga murojaat qilishda uning namespace i oldidan teskari chiziq yozish kerak. Aslida bu majburiy emas. Agar bu chiziq yozilmasa, chaqirilayotgan namespace joriy namespace ga nisbatan hisoblanadi. Misolni ko'ring:

<?php namespace Admin\Data; new Core\Controller; // \Admin\Data\Core\Controller ga teng ?>

Ikkita class berilgan:

<?php namespace Modules\Shop\Core; class Cart { } ?>
<?php namespace Modules\Shop; class UserCart extends \Modules\Shop\Core\Cart { } ?>

Class larni meros olish uchun kodni soddalashtiring, bizning class larning namespace larining bir qismi mos kelishini hisobga olgan holda.

Ikkita class berilgan:

<?php namespace Core\Data; class Controller { } ?>
<?php namespace Core\Data; class Model { } ?>

Ushbu class larning obyektlari index.php faylida shunday yaratiladi:

<?php namespace Core\Data; $controller = new \Core\Data\Controller; $model = new \Core\Data\Model; ?>

Obyektlarni yaratish uchun kodni soddalashtiring, obyektlarimizning yaratilayotgan namespace ini hisobga olgan holda.

hufrhydees