Maison >développement back-end >tutoriel php >Méthodes d'utilisation spécifiques de l'espace de noms et de l'utilisation
espace de noms (ci-après dénommé ns). Après avoir défini un ns, la class, l'interface et la const (hors variables) déclarées ci-dessous sont toutes dans le "domaine" du ns déclaré. Lorsque fait référence à un fichier d'inclusion qui déclare ns, et si vous voulez appeler quelque chose dans ce ns, vous devez ajuster le script actuel à ce domaine ns, sinon vous devez utiliser le domaine complet name () pour l'inclure Nom complet de ns :
[php] view plain copy // 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();
Le but du mot-clé use est d'utiliser l'alias de ns :
[php] view plain copy // 比如 use A\Very\Long\Namespace as Ns; // 这样就可以用Ns来代替A/Very/Long/Namespace这个ns下定义的东西 $foo = new Ns\Foo();
Cependant, dans certains open source projets, vous voyez souvent l'utilisation de use NsComponent, ce qui est inutile car cela m'a fait réfléchir à l'existence d'une deuxième utilisation de use. Le problème est qu'il n'y a pas de description de cette utilisation dans la documentation PHP, donc je. Je ne peux compter que sur des suppositions. Plus tard, j'ai réfléchi attentivement à ce problème et j'en ai trouvé un plus fiable. La conclusion du spectre est que l'utilisation peut omettre as et les alias suivants et utiliser directement le nom du dernier nœud de ns. un alias. Cela ne ressemble-t-il pas à l'utilisation de la commande ln -s :
[php] view plain copy // 第三种用法 require 'inc.php'; use Foo\Bar; // 这样Bar就等于Foo\Bar了 $foo = new Bar();
Ce qui précède, c'est moi, j'ai compilé les méthodes d'utilisation spécifiques de l'espace de noms et j'espère que ce sera le cas. utile à tout le monde à l’avenir.
Articles connexes :
Utilisation détaillée dans la fonction de fermeture PHP() use()
Espace de noms PHP Guide d'utilisation détaillé pour espace de noms et utilisation importée
Explication détaillée du cas de substitution PHP Liskov
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!