PHP:在命名空间内使用子命名空间类


PHP: using sub-namespace class inside a namespace

>假设我有一个顶级命名空间'Outer我还有另一个子命名空间'Outer'Inner我还有另一个顶级命名空间'Inner

'Outer的课堂上,我使用这样的Inner

use Inner;

那么将使用哪个内部?

'Outer'Inner // ( sub-namespace )

'Inner  // ( top-level namespace )

我很困惑,因为 php 说'对于顶级命名空间是可选的?

当类中有命名空间'Outer时,use Inner将使用Inner顶级命名空间。如果要使用子命名空间,则应使用 'Outer'Inner

如使用命名空间的 php 中所述

假设您的第一个文件是:

<?php
namespace Outer'Inner;

<?php
 namespace Outer;
/* Qualified name */
Inner'foo(); // resolves to function Outer'Inner'foo