⊗ppOpNsRPt 100 of 107 menu

Տարածքների անունների հարաբերական ուղիները OOP-ում 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; ?>

Պարզեցրեք օբյեկտների ստեղծման կոդը, հաշվի առնելով այն տարածքի անունը, որում ստեղծվում են մեր դասերի օբյեկտները:

dabyuzcfrnl