如何在PHP中实现嵌套命名空间?

use*_*729 2 php namespaces

use level1\level2\level3;
Run Code Online (Sandbox Code Playgroud)

有人可以通过简单的演示来解释吗?

Ant*_*ney 5

为了消除有关不同语法使用的任何混淆,命名空间仅支持两种语法,无论是括号还是简单组合都可以使用.我建议如果你使用一个而不是另一个,那就一致了.

<?php
namespace my\stuff\nested {  // <- bracketed syntax
 class foo {}
}
?>
Run Code Online (Sandbox Code Playgroud)

它使用括号语法()foonested命名空间创建一个类{},它相当于

<?php
namespace my\stuff {  // bracketed syntax but with a nested look
  namespace nested {
     class foo {}
  }
}
?>
Run Code Online (Sandbox Code Playgroud)

您还可以使用嵌套命名空间和简单组合语法(;)

<?php
namespace mine;
use ultra\long\ns\name;  // <- simple-combination syntax

$a = name\CONSTANT;
name\func();
?>
Run Code Online (Sandbox Code Playgroud)

PHP:常见问题解答:您需要了解的名称空间