⊗ppOpNsSN 97 of 107 menu

Naamruimtesubruimtes in OOP in PHP

Gestel ons het nou 'n meer ingewikkelde situasie: vir die admin moet twee klasse Page gemaak word - een met die bladsy data, en die tweede - met die vertoning van hierdie data. Gestel die eerste klas is geleë in die lêer /admin/data/page.php, en die tweede - in die lêer /admin/view/page.php.

In vorige lesse het ons reeds besluit dat alle klasse uit die gids admin sal behoort tot die naamruimte Admin. Maar nou is daar in hierdie selfde naamruimte 'n konflik van twee klasse. Om die probleem op te los, kan bykomende naamruimtesubruimtes gemaak word. Byvoorbeeld, kan 'n naamruimte Admin gemaak word, en daarin subruimtes Data en View. In so 'n geval word die name van hierdie subruimtes eenvoudig geskryf met 'n agteroorskuinsstreep - beide wanneer die naamruimte gespesifiseer word en wanneer 'n objek van die klas geskep word.

Hier moet dit verduidelik word dat die vlak van inkapseling van subruimtes nie beperk is nie (mens kan sub-subruimtes binne subruimtes skep en so aan).

Kom ons voltooi dus ons bogenoemde voorbeeld. Vir die klas Page uit die lêer /admin/data/page.php spesifiseer ons die naamruimte Admin\Data:

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

Vir die klas Page uit die lêer /admin/view/page.php spesifiseer ons die naamruimte Admin\View:

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

Kom ons skep objekte van ons klasse:

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

Gestel jy het die gids modules/cart. Sorg dat alle klasse uit hierdie gids behoort tot die naamruimte Modules\Cart.

Gestel jy het die gids modules/shop/cart/. Sorg dat alle klasse uit hierdie gids behoort tot die naamruimte Modules\Shop\Cart.

Afrikaans
AzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ons gebruik koekies vir die werking van die webwerf, ontleding en personalisering. Die verwerking van data geskied volgens die Privaatheidsbeleid.
aanvaar alles instel verwerp