namespace关键字和__NAMESPACE__之间的区别和联系

Original 2019-04-09 10:42:30 166
abstract:PHP支持两种抽象的访问当前命名空间内部元素的方法,__NAMESPACE__ 魔术常量和namespace关键字。常量__NAMESPACE__的值是包含当前命名空间名称的字符串。在全局的,不包括在任何命名空间中的代码,它包含一个空的字符串。常量 __NAMESPACE__ 在动态创建名称时很有用,例如: 使用__NAMESPACE__动态创建名称<

PHP支持两种抽象的访问当前命名空间内部元素的方法,__NAMESPACE__ 魔术常量和namespace关键字。

常量__NAMESPACE__的值是包含当前命名空间名称的字符串。在全局的,不包括在任何命名空间中的代码,它包含一个空的字符串。


常量 __NAMESPACE__ 在动态创建名称时很有用,例如:

 使用__NAMESPACE__动态创建名称

<?php
namespace MyProject;

function get($classname)
{
    $a = __NAMESPACE__ . '\\' . $classname;
    return new $a;
}
?>

关键字 namespace 可用来显式访问当前命名空间或子命名空间中的元素。它等价于类中的 self 操作符。


Correcting teacher:天蓬老师Correction time:2019-04-09 10:56:18
Teacher's summary:namespace 关键字, 你就把理解为一个普通的标识符, 就像是self,static同级别的就可以

Release Notes

Popular Entries