Heim >php教程 >PHP开发 >Analyse des Namespace und der Verwendung in PHP

Analyse des Namespace und der Verwendung in PHP

黄舟
黄舟Original
2016-12-14 10:47:471158Durchsuche

Die Beispiele in diesem Artikel beschreiben die Verwendung von Namespaces und die Verwendung in PHP. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:

Namespace (im Folgenden als ns bezeichnet). Nach der Definition eines NS befinden sich die unten deklarierten Klassen, Schnittstellen und Konstanten (mit Ausnahme der Variablen) alle in der „Domäne“ des deklarierten NS. Wenn Sie auf eine Include-Datei verweisen, die ns deklariert, und wenn Sie etwas in diesem ns aufrufen möchten, müssen Sie das aktuelle Skript an die ns-Domäne anpassen, andernfalls müssen Sie den vollständigen Namen () verwenden, um den vollständigen Namen von ns einzuschließen):

// inc.php
namespace Foo;
class Bar {}
// 访问Foo的第一种方法,用全称
require 'inc.php';
$foo = new \Foo\Bar();
// 访问Foo的第二种方法
namespace Foo; // 调整当前脚本到Foo这个ns域,而且namespace申明必须在第一句
require 'inc.php';
$foo = new Bar();

Der Zweck des Schlüsselworts use besteht darin, den Alias ​​von ns zu verwenden:

// 比如
use A\Very\Long\Namespace as Ns;
// 这样就可以用Ns来代替A/Very/Long/Namespace这个ns下定义的东西
$foo = new Ns\Foo();


Aber in einigen Fällen wird die Verwendung häufig in Open-Source-Projekten beobachtet Diese Verwendung von NsComponent wird nicht als verwendet, weshalb ich darüber nachdenke, ob es eine zweite Verwendung gibt. Das Schlimme ist, dass es in der PHP-Dokumentation keine Beschreibung dieser Verwendung gibt, sodass ich mich später nur auf Vermutungen verlassen kann Ich habe sorgfältig darüber nachgedacht. Eine zuverlässigere Schlussfolgerung ist, dass die folgenden Aliase weggelassen werden können und der Name des letzten Knotens von ns direkt als Alias ​​verwendet werden kann. So verwenden Sie den Befehl -s:

// 第三种用法
require 'inc.php';
use Foo\Bar; // 这样Bar就等于Foo\Bar了
$foo = new Bar();

Ich hoffe, dass dieser Artikel für alle in der PHP-Programmierung hilfreich ist. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (). www.php.cn )!


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn