namespace关键字和__NAMESPACE__常量

原创 2019-04-24 22:33:09 312
摘要:        命名空间可以解决类/函数/常量的名字冲突的问题。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();


批改老师:天蓬老师批改时间:2019-04-25 13:41:37
老师总结:所谓导入空间, 仅仅只是一个别名罢了, 并不代替加载, 还是要手工加载的

发布手记

热门词条