Maison  >  Article  >  développement back-end  >  Comment définir un espace de noms en PHP

Comment définir un espace de noms en PHP

墨辰丷
墨辰丷original
2018-05-24 11:38:441283parcourir

Cet article présente principalement la méthode de définition de l'espace de noms PHP et analyse en détail la méthode de définition et les précautions associées de l'espace de noms et des sous-espaces de noms PHP sous forme d'exemples. Les amis dans le besoin peuvent s'y référer

. L'exemple de cet article décrit comment définir l'espace de noms de l'espace de noms PHP. Partagez-le avec tout le monde pour votre référence. Les détails sont les suivants :

Définissez l'espace de noms

Concernant le nom de l'espace, je ne veux pas l'expliquer. en mots ici. Une meilleure explication est d'utiliser Exemple pour prouver :

Par exemple :

Le code suivant est un fichier dans "test.php" :

namespace Test;
class Test{
    public function Ttest(){
     echo "这是Test里面的测试方法"."<br>";
    }
}

Ensuite, j'utiliserai trois manières différentes d'accéder. J'ai écrit ces trois programmes d'accès dans un fichier appelé "index.php" :

Méthode 1 :

namespace Index;
require &#39;test.php&#39;;
$T=new \Test\Test();
$T->Ttest();

Le résultat est :

C'est la méthode de test dans Test

Méthode 2 :

namespace Index;
namespace Test;
require &#39;test.php&#39;;
$T=new Test();
$T->Ttest();

Le résultat est :

C'est la méthode de test dans Test

Méthode 3 :

namespace Index;
require &#39;test.php&#39;;
use Test\Test;
$T=new Test();
$T->Ttest();

Les résultats obtenus Pour :

Il s'agit de la méthode de test dans Test

Remarque : L'espace de noms Index peut être écrit ou non. Il s'agit simplement du nom d'espace du fichier index.php. Les résultats obtenus par ces trois méthodes sont les mêmes.

Définir des sous-espaces de noms

Définition :

est très similaire à la relation entre les répertoires et les fichiers. Les espaces de noms PHP vous permettent également de spécifier des espaces de noms hiérarchiques. . nom. Par conséquent, les noms d’espaces de noms peuvent être définis de manière hiérarchique.

L'exemple est le suivant. Ceci est mon répertoire de projet personnalisé :

one.php

namespace projectOne\one;
class Test{
    public function test(){
     return "this is a test program";
    }
}

Afin d'accéder à la méthode test() sous la classe Test dans one.php, mon code dans Two est le suivant :

Two.php

namespace projectOne\one;
require &#39;../projectOne/One.php&#39;;
$O=new Test();
echo $O->test();

Sortie : il s'agit d'un programme de test

Plusieurs espaces de noms sont définis dans le même fichier et ils accèdent les uns aux autres

test.php

namespace projectOne\one{
    class test{
      public function hello(){
        return "helloworld";
      }
    }
}
namespace projectOne\Two{
    class project{
      public function world2(){
        return "welcome to china";
      }
    }
    class project2 extends \projectOne\one\test{
      public function wo(){
        return "this is my test function ,it is name wo";
      }
    }
}
namespace projectOne\Two{
    $p=new project2();
    echo $p->wo()."<br>";
    echo $p->hello();
}

sortie : c'est ma fonction de test, c'est le nom wo

helloworld

Le ci-dessus est le contenu de cet article. Tout le contenu, j'espère qu'il sera utile à l'étude de chacun.


Recommandations associées :

PensezPHPDétails de la fonction : méthode D

À propos de PHPPoints de connaissances pertinents pour implémenter la connexion utilisateur (2)

À propos de PHPPoints de connaissances pertinents pour implémenter la connexion utilisateur (1) )

PHPMoyen courant d'obtenir une extension de fichier

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