⊗ppOpNsSN 97 of 107 menu

Navnerom i OOP i PHP

La oss nå anta at vi har en mer kompleks situasjon: for admin må vi lage to klasser Page - en med sidens data, og den andre - med presentasjonen av disse dataene. La den første klassen være i filen /admin/data/page.php, og den andre - i filen /admin/view/page.php.

I tidligere leksjoner har vi allerede bestemt at alle klasser fra mappen admin vil tilhøre navnerommet Admin. Men nå har vi i dette samme navnerommet en konflikt mellom to klasser. For å løse problemet kan vi lage ytterligere undernavnerom. For eksempel kan vi lage navnerommet Admin, og i det undernavnerommene Data og View. I så fall skrives navnene på disse undernavnerommene enkelt med omvendt skråstrek - både ved angivelse av navnerom og ved opprettelse av objekt av klassen.

Her bør det presiseres at nestingsnivået for undernavnerom ikke er begrenset (man kan lage under-under-navnerom i undernavnerom og så videre).

Så la oss fullføre vårt ovennevnte eksempel. For klassen Page fra filen /admin/data/page.php angi navnerommet Admin\Data:

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

For klassen Page fra filen /admin/view/page.php angi navnerommet Admin\View:

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

La oss opprette objekter av våre klasser:

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

Anta at du har mappen modules/cart. Gjør slik at alle klasser fra denne mappen tilhører navnerommet Modules\Cart.

Anta at du har mappen modules/shop/cart/. Gjør slik at alle klasser fra denne mappen tilhører navnerommet Modules\Shop\Cart.

Norsk
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi bruker informasjonskapsler for nettstedets funksjonalitet, analyse og personalisering. Behandling av data foregår i henhold til Personvernerklæringen.
godta alle tilpass avvis