In diesem Blogbeitrag werfen wir einen Blick auf die Beziehung zwischen Namespaces und öffentlichen Räumen und auf die Probleme, die bei deren Verwendung beachtet werden müssen. Wir werden sie anhand von 2 PHP-Dateien demonstrieren.
Beachten Sie, dass 1.php 2.php nicht enthalten kann und 2.php gleichzeitig 1.php enthält. Eine Endlosschleife meldet einen Fehler.
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
Das Obige ist PHP-Entwicklung (32)-ThinkPHP5.0 (4) Namespace und öffentlicher Raum – PHPStorm-Inhalte. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (m.sbmmt.com)!