下面的代码会抛出一个错误,提示无法重新声明
然而,在命名空间声明中去掉
我最近开始使用PHP的命名空间。我理解带有
那么为什么在命名空间声明中不能使用前缀呢?但是当引用时可以使用 (例如
Exception
。namespace \NYTD\ReadingListBackend;
class Exception extends \Exception
{
}
然而,在命名空间声明中去掉
\
前缀则不起作用:namespace NYTD\ReadingListBackend;
我最近开始使用PHP的命名空间。我理解带有
\
前缀的命名空间代表一个完全限定的名称。那么为什么在命名空间声明中不能使用前缀呢?但是当引用时可以使用 (例如
new \NYTD\ReadingListBackend\Exception
)。如果能提供一个详细的解释,将不胜感激,因为我在 官方文档 中没有找到任何信息。
\NYTD\ReadingListBackend
是一个常量或者类似的东西。省略掉开头的\
,你就没问题了。 - Elias Van Ootegem