Dans cet article de blog, examinons la relation entre les espaces de noms et les espaces publics, ainsi que les problèmes auxquels il faut prêter attention lors de leur utilisation. Nous les démontrerons à travers 2 fichiers PHP.
Notez que 1.php ne peut pas inclure 2.php, et en même temps, 2.php inclut 1.php, une boucle infinie signalera une erreur.
1.php :
<?php /** * 命名空间 公共空间 访问方式 * 命名空间 优先级大于 公共空间 */ namespace shenyang; class Animal{ public $obj = 'dog<br>'; static $name = '大黄<br>'; } function getmsg(){ echo "辽沈<br>"; } const NM = "iwanghang1<br>"; include("./2.php"); getmsg(); // 打印结果:辽沈 (由此可见,引入的空间,对当前空间没有影响) echo \NM; // 打印结果:iwanghang2 (\ 公共空间 访问方式) echo NM; // 打印结果:iwanghang1 (假如,当前空间没有NM,就会去公共空间查找NM,)
2.php :
<?php function getmsg(){ echo "北京"; } const NM="iwanghang2<br>"; /** * 注意,不能1.php include 2.php,同时,2.php include 1.php,死循环会报错 * 当我们测试下面的代码的时候,要注释掉1.php中的“include("./2.php");” */ include("./1.php"); echo NM; // 不推荐的写法 echo \NM; // 打印结果:iwanghang2 echo \shenyang\NM; // 打印结果:iwanghang1
Ce qui précède est le développement PHP (32) -ThinkPHP5.0 ( 4) Contenu de l'espace de noms et de l'espace public-PhpStorm, veuillez faire attention au site Web PHP chinois (www.php.cn) pour plus de contenu connexe !