我现在正在学习 php 命名空间,并且对命名空间关键字和命名空间常量之间的区别感到困惑:
__NAMESPACE__
namespace
php.net 上的所有示例似乎都使用了这样的关键字:
namespace\MyClass
或类似的东西。这也可以很容易地用常数来完成。
有人可以解释它们之间的根本区别以及何时使用其中一个。
我现在正在学习 php 命名空间,并且对命名空间关键字和命名空间常量之间的区别感到困惑:
__NAMESPACE__
namespace
php.net 上的所有示例似乎都使用了这样的关键字:
namespace\MyClass
或类似的东西。这也可以很容易地用常数来完成。
有人可以解释它们之间的根本区别以及何时使用其中一个。
namespace 关键字namespace
用于定义文件中的命名空间,类似于 C# 的namespace
关键字(但没有大括号来定义范围)或 Java 的package
关键字。
在 PHP 中,该__NAMESPACE__
常量返回当前命名空间范围名称的字符串值。尽量避免使用它,因为它会使你的代码变得混乱,但在使用字符串作为类型名时它很有用。
PHP 手册中有更多文档:http ://www.php.net/manual/en/language.namespaces.nsconstants.php