⊗ppOpNsSN 97 of 107 menu

Подпростори имена у ООП у PHP

Нека сада имамо сложенију ситуацију: за администратора треба направити две класе Page – једна са подацима странице, а друга – са приказом тих података. Нека се прва класа налази у фајлу /admin/data/page.php, а друга – у фајлу /admin/view/page.php.

У претходним лекцијама већ смо одлучили да све класе из фасцикле admin припадају простору имена Admin. Међутим, сада у овом истом простору имамо сукоб две класе. За решавање проблема можемо направити додатне подпросторе имена. На пример, можемо направити простор имена Admin, а у њему подпросторе Data и View. У том случају имена ових подпростора једноставно се запишу кроз обрнуту косу црту – како при задавању простора имена, тако и при креирању објекта класе.

Овде треба прецизирати да ниво угнежђења подпростора није ограничен (могуће је креирати под подпросторе у подпросторима и тако даље).

Дакле, довршимо наш горе описани пример. За класу Page из фајла /admin/data/page.php наведемо простор имена Admin\Data:

<?php namespace Admin\Data; class Page { } ?>

За класу Page из фајла /admin/view/page.php наведемо простор имена Admin\View:

<?php namespace Admin\View; class Page { } ?>

Креирајмо објекте наших класа:

<?php require_once '/admin/data/page.php'; require_once '/admin/view/page.php'; $adminDataPage = new \Admin\Data\Page; $adminViewPage = new \Admin\View\Page; ?>

Нека имате фасциклу modules/cart. Учините да све класе из ове фасцикле припадају простору имена Modules\Cart.

Нека имате фасциклу modules/shop/cart/. Учините да све класе из ове фасцикле припадају простору имена Modules\Shop\Cart.

Српски
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Користимо колачиће за рад сајта, аналитику и персонализацију. Обрада података се врши у складу са Политиком приватности.
прихвати све подеси одбиј