⊗ppOpNsSN 97 of 107 menu

Namensraum-Unterteilungen in OOP in PHP

Nehmen wir nun an, wir haben eine komplexere Situation: für den Administrator müssen zwei Klassen Page erstellt werden - eine mit den Seitendaten und die zweite - mit der Darstellung dieser Daten. Nehmen wir an, die erste Klasse befindet sich in der Datei /admin/data/page.php und die zweite - in der Datei /admin/view/page.php.

In vorherigen Lektionen haben wir bereits entschieden, dass alle Klassen aus dem Ordner admin zum Namensraum Admin gehören werden. Jetzt jedoch haben wir in diesem selben Namensraum einen Konflikt zwischen zwei Klassen. Um das Problem zu lösen, können zusätzliche Namensraum-Unterteilungen erstellt werden. Zum Beispiel kann der Namensraum Admin erstellt werden, und darin die Unterteilungen Data und View. In diesem Fall werden die Namen dieser Unterteilungen einfach durch einen Backslash getrennt geschrieben - sowohl bei der Definition des Namensraums als auch bei der Erstellung eines Objekts der Klasse.

Hier sollte klargestellt werden, dass die Verschachtelungstiefe der Unterteilungen nicht begrenzt ist (es können Unter-Unterteilungen in Unterteilungen erstellt werden und so weiter).

Lassen Sie uns nun das oben beschriebene Beispiel fertigstellen. Für die Klasse Page aus der Datei /admin/data/page.php geben wir den Namensraum Admin\Data an:

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

Für die Klasse Page aus der Datei /admin/view/page.php geben wir den Namensraum Admin\View an:

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

Erstellen wir Objekte unserer Klassen:

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

Nehmen wir an, Sie haben den Ordner modules/cart. Sorgen Sie dafür, dass alle Klassen aus diesem Ordner zum Namensraum Modules\Cart gehören.

Nehmen wir an, Sie haben den Ordner modules/shop/cart/. Sorgen Sie dafür, dass alle Klassen aus diesem Ordner zum Namensraum Modules\Shop\Cart gehören.

Deutsch
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskΕλληνικά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
Wir verwenden Cookies für den Betrieb der Website, Analyse und Personalisierung. Die Datenverarbeitung erfolgt gemäß der Datenschutzerklärung.
alle akzeptieren anpassen ablehnen