Maison >développement back-end >Problème PHP >Qu'est-ce qu'un espace de noms en PHP ? Comment utiliser les espaces de noms ?

Qu'est-ce qu'un espace de noms en PHP ? Comment utiliser les espaces de noms ?

慕斯
慕斯original
2021-06-21 11:15:542113parcourir

L'article précédent vous a présenté " PHP Advanced Syntax - Qu'est-ce qu'un trait ? Comment l’utilisons-nous ? Quelles sont ses caractéristiques ? 》, cet article continue de vous présenter qu'est-ce qu'un espace de noms en PHP ? Comment utiliser les espaces de noms ?

Qu'est-ce qu'un espace de noms en PHP ? Comment utiliser les espaces de noms ?

Espace de noms :

Si la classe Person apparaît dans un fichier, une autre classe Person peut-elle être définie ?

L'espace de noms est le dossier.

Vous pouvez avoir le même nom de classe sous différents espaces de noms

espace de noms : espace de noms

utiliser : utiliser

Nous créons d’abord un nouveau fichier. Nous avons défini une classe de personne dans le fichier, pouvons-nous donc toujours voir une classe de personne ? Nous prenons le code comme exemple pour le débogage Le code est le suivant :

<?php
   class person
   {
   }
   
   class person
   {
   }
?>

Les résultats sont les suivants :

Quest-ce quun espace de noms en PHP ? Comment utiliser les espaces de noms ?

Nous nous basons sur Les résultats montrent que le code signale une erreur selon laquelle la classe de personne ne peut pas être définie à plusieurs reprises. Il s'agit d'une erreur évidente. Nous ne sommes pas autorisés à avoir deux fichiers identiques dans le même fichier, mais si nous le faisons. Nous voulons avoir le même nom de classe, nous pouvons référencer le concept d'espace de noms.

Ensuite, nous commençons à utiliser les espaces de noms. Pour le code que nous venons d'écrire, nous avons écrit la première personne sous un espace de noms, et j'ai écrit la deuxième personne sous un autre espace de noms. Nous pouvons ensuite définir deux classes de personnes en même temps. . L'espace de noms est écrit comme suit : De plus, nous devons donner un nom à l'espace de noms, donc le code que nous venons d'écrire se trouve dans l'espace de noms que nous venons de définir. À l'intérieur, l'exécution de ce code signalera toujours une erreur, nous devons donc le définir. un espace de noms pour la classe à la deuxième personne, puis nous définissons une méthode (fonction) respectivement dans la première classe et la deuxième classe. À ce stade, nous définissons deux classes qui ont le même nom, mais ne sont pas dans le même espace de noms. est le suivant :

<?php
namespace love;
   class Person
   {
     function pome()
     {
       echo &#39;我明白你会来,所以我等<br />&#39;;
     }
   }
   namespace like;
   class Person
   {
     function pome()
     {
     echo &#39;不须耳鬓常厮伴,一笑低头意已倾<br />&#39;;
   }
   }
?>

Le résultat est le suivant :

Quest-ce quun espace de noms en PHP ? Comment utiliser les espaces de noms ?

L'affichage du résultat est correct ; rapporté ;

Si nous voulons afficher le contenu du code que nous venons d'écrire, nous devons créer un nouvel objet personne, sinon nous ne saurons pas lequel est la classe personne en sortie, le code est le même. suit :

 $ming = new Person();
   $ming ->pome();

Le résultat est le suivant :

Quest-ce quun espace de noms en PHP ? Comment utiliser les espaces de noms ?

Remarque : Lorsque nous créons l'objet, nous le nommons ici espace ;

Si nous voulons afficher le contenu du premier espace de noms, nous devons écrire comme ceci :

$niu = new \love\Person();
  $niu->pome();

Le résultat est le suivant :

Quest-ce quun espace de noms en PHP ? Comment utiliser les espaces de noms ?

1. Le nom du premier espace de noms : il ne peut y avoir de code devant lui

2. Espace racine, sous-espace

Espace racine.

Votre espace bonjour est en fait

\hello .

Votre espace monde est en fait

\world

Vous êtes dans l'espace mondial

hello\Dog ===> world\hello\Dog

3. Utiliser utiliser, utiliser comme

use \hello\test\Dog as SmallDog;
use
\world\Dog as BigDog;

Apprentissage recommandé : tutoriel vidéo php

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn