Heim > Artikel > Backend-Entwicklung > Über den PHP-Namespace (kombiniert mit Codebeispielen, einfach und leicht verständlich)
Das Folgende ist der Namespace von PHP, den ich für Sie zusammengestellt habe. Interessierte Studenten können einen Blick darauf werfen.
Erste Datei
cat.class.php
<?php namespace Animals\Cat; class Cat { public function speak() { echo 'miaow'; } } function root() { return 'cat.class.php'; } ?>123456789101112131415
Zweite Datei
dog.class.php
<?php namespace Animals\Dog; class Dog { public function speak() { echo 'woof'; } } class Cat { public function speak() { echo 'miaoth'; } } function root(){ return 'dog.class.php'; } ?>1234567891011121314151617181920212223
index.php
Die dritte Datei ist die Datei, die den oben genannten Namespace lädt
<?php namespace Index; require_once 'cat.class.php'; require_once 'dog.class.php'; use Animals\Cat; use Animals\Dog as Snoopi; //完全限定名 $cat1 = new \Animals\Cat\Cat(); $cat1->speak(); echo '<br/>'; $cat2 = new \Animals\Dog\Cat(); $cat2->speak(); echo '<br/>'; $dog1 = new \Animals\Dog\Dog(); $dog1->speak(); echo '<br/>'; //非完全限定名 $cat3 = new Cat\Cat(); $cat3->speak(); echo '<br/>'; //别名 *别名和非完全限定名 不能同时使用 $dog3 = new Snoopi\Dog(); $dog3->speak(); //不止函数,该命名空间下的任何可用资源都可调用[函数、变量、常量等等] echo Snoopi\root(); echo '<br/>'; ?>12345678910111213141516171819202122232425262728293031323334
Die Namespace-Klasse kann mit dem Dateiverzeichnissystem analogisiert werden
neu Eine Klasse in einem Namespace [oder Funktion, Variable usw. usw. ] Das heißt, den Inhalt einer Datei in einem bestimmten Verzeichnis aufzurufen.
Der vollständig qualifizierte Name ist der Pfad, um den Inhalt in der Datei zu finden.
Der nicht vollständig qualifizierte Name entspricht
. Verwenden Sie das 'relative path' beim Einführen des Namensraums ' Weisen Sie einer Variablen einen Wert zu, der standardmäßig den letzten Unterraum verwendet.
Verwenden Sie das Schlüsselwort as, um den Namen der Variablen festzulegen. Die Variable ist ein Alias und nicht vollständig qualifizierte Namen kann nicht gleichzeitig verwendet werden (da ein use[+as ] Es kann nur ein Alias angegeben werden).
Analoges Dateiverzeichnissystem:
Dateispeicherort: /root/path/file/fileContent;
verwenden Sie /root/path/file, also file='/root/path/file′, also lautet der Pfad der Datei file='/root/path/file′, also ist der Pfad der Datei file/fileContent
* und der Namespace-Index in index.php entspricht der Angabe des aktuellen Dateispeicherorts
, wenn also in index.php Der Dateiinhalt wird auf
<?php require_once 'cat.class.php'; require_once 'dog.class.php'; use Animals\Cat\Cat;#引入该命名空间下的类 $cat4 = new Cat(); $cat4->speak(); root(); ?>123456789
Verwendung geändert, was dem Laden nur der Cat-Klasse im Namespace AnimalsCat entspricht und die Funktion root() nicht „geladen“ ist
, sodass beim Ausführen ein Fehler ausgegeben wird: root()-Funktion Nicht deklariert
Das Obige ist der PHP-Namespace, den ich für Sie zusammengestellt habe. Ich hoffe, dass er Ihnen in Zukunft hilfreich sein wird.
Verwandte Artikel:
PHP-Namespace (detaillierte Antwort kombiniert mit Code)
Detaillierte Einführung in den PHP-Namespace und das automatische Laden Der Unterschied
Kombiniert mit dem Code, um den Umfang in PHP im Detail vorzustellen
Das obige ist der detaillierte Inhalt vonÜber den PHP-Namespace (kombiniert mit Codebeispielen, einfach und leicht verständlich). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!