PHP如何在同一文件中定义多个命名空间

2023年11月27日10:57:53

介绍

一个扩展名为.php的文件可以定义多个命名空间。为此,规定了两种不同的方法。组合语法和方括号内的语法

具有组合语法的多个命名空间

在此示例中,两个命名空间定义为一个在另一个之下。在第二个定义开始之前,第一个命名空间中的资源可用。如果要使命名空间成为当前名称,请使用use关键字加载它。

示例

<?php
namespace myspace1;
function hello() {
   echo "Hello World from space1\n";
}
echo "myspace1 : ";
hello();
namespace myspace\space2;
function hello(){
   echo "Hello World from space2\n";
}
echo "myspace2 : ";
hello();
use myspace1;
hello();
use myspace2;
hello();
?>

输出结果

上面的代码显示以下输出

myspace1 : Hello World from space1
myspace2 : Hello World from space2
Hello World from space2
Hello World from space2

带括号语法的多个命名空间

在以下示例中,定义了两个命名空间,它们的范围用大括号括起来

示例

<?php
namespace myspace1{
   function hello() {
      echo "Hello World from space1\n";
   }
   echo "myspace1 : ";
   hello();
}
namespace myspace\space2{
function hello(){
   echo "Hello World from space2\n";
}
echo "myspace2 : ";
hello();
}
?>

输出结果

上面的代码显示以下输出

myspace1 : Hello World from space1
myspace2 : Hello World from space2

建议使用多个命名空间的方括号语法,而不要使用组合语法。括号和未括号的命名空间不能混合使用。除了开头的声明语句外,在命名空间括号之外可能没有其他PHP代码。如果必须将全局命名空间与命名命名空间组合在一起,则仅允许使用方括号括起来的语法。


  • 更新时间:2023年11月27日10:57:53 ,共 1003 字。