namespace关键字和__NAMESPACE__常量

Original 2019-04-24 22:33:09 236
abstract:        命名空间可以解决类/函数/常量的名字冲突的问题。PHP提供了namespace关键字和__NAMESPACE__常量两种动态的访问元素。1)__NAMESPACE__常量:它的值是当前命名空间的名称的字符串,可以通过组合字符串的形式来动态访问命名空间中的方法;当在全局变量中时,它的值为空;<?ph

        命名空间可以解决类/函数/常量的名字冲突的问题。PHP提供了namespace关键字和__NAMESPACE__常量两种动态的访问元素。

1)__NAMESPACE__常量:它的值是当前命名空间的名称的字符串,可以通过组合字符串的形式来动态访问命名空间中的方法;当在全局变量中时,它的值为空;

<?php
namespace {
var_dump( __NAMESPACE__);//string(0) "",当在全局变量中时,__NAMESPACE__常量的值为空;
}
namespace A{
//创建一个类
class Comment { };
//通过组合字符串的形式来动态的创建了一个类并进行调用;
$a=__NAMESPACE__.'\Comment';
$a=new $a();
}

2)namespace关键字可以声明命名空间;可以表示当前空间,等价于类中的 self 操作符

<?php
namespace A;// 定义代码在 'A' 的命名空间中 
class Comment { };
//namespace可以表示当前空间
$a= new namespace\Comment();


Correcting teacher:天蓬老师Correction time:2019-04-25 13:41:37
Teacher's summary:所谓导入空间, 仅仅只是一个别名罢了, 并不代替加载, 还是要手工加载的

Release Notes

Popular Entries