⊗ppOpNsSN 97 of 107 menu

Podpriestory názvov v OOP v PHP

Nech teraz máme zložitejšiu situáciu: pre admina je potrebné vytvoriť dve triedy Page - jednu s údajmi stránky a druhú - s reprezentáciou týchto údajov. Nech sa prvá trieda nachádza v súbore /admin/data/page.php, a druhá - v súbore /admin/view/page.php.

V predchádzajúcich lekciách sme sa už dohodli, že všetky triedy z priečinka admin budú patriť do priestoru názvov Admin. Avšak, teraz v tomto samom priestore máme konflikt dvoch tried. Na vyriešenie problému je možné vytvoriť dodatočné podpriestory názvov. Napríklad, je možné vytvoriť priestor názvov Admin, a v ňom podpriestory Data a View. V takom prípade sa názvy týchto podpriestorov jednoducho zapisujú cez spätné lomítko - ako pri zadávaní priestoru názvov, tak aj pri vytváraní objektu triedy.

Tu je potrebné upresniť, že úroveň vnorenia podpriestorov nie je obmedzená (možno vytvárať podpodpriestory v podpriestoroch a tak ďalej).

Takže, dokončime náš vyššie opísaný príklad. Pre triedu Page zo súboru /admin/data/page.php zadáme priestor názvov Admin\Data:

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

Pre triedu Page zo súboru /admin/view/page.php zadáme priestor názvov Admin\View:

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

Vytvorme objekty našich tried:

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

Nech máte priečinok modules/cart. Zaistite, aby všetky triedy z tohto priečinka patrili do priestoru názvov Modules\Cart.

Nech máte priečinok modules/shop/cart/. Zaistite, aby všetky triedy z tohto priečinka patrili do priestoru názvov Modules\Shop\Cart.

Slovenčina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používame cookies na fungovanie stránky, analýzu a personalizáciu. Spracúvanie údajov prebieha v súlade s Politikou ochrany osobných údajov.
prijať všetky nastaviť odmietnuť