PHP命名空间

来源:互联网 发布:淘宝运营员是做什么的 编辑:程序博客网 时间:2024/06/15 23:19

1、老版本php解决类名冲突

类名:Zend_Cloud_DocumentService_Adapter_WindowsAzure_Query
原生的自动加载器会把类名中的下划线替换成文件系统的目录分隔符,从而确定类文件路径。

2、类的使用

1)单纯的使用命名空间
$response = new \Symfony\Component\HttpFoundation\Response;
$response->send();
描述:在创建多个对象时,需要多次敲一连串的命名空间
2)导入
使用use关键字导入类
use Symfony\Component\HttpFoundation\Response;
描述:使用use关键字后实例化类时将不用再写完整的类名
3)别名
导入后可以给类起一个别名
use Symfony\Component\HttpFoundation\Response as SysRes;
$response = new SysRes();

3、use关键字

1)导入函数
use func Namespace\functionName
2)导入常量
use constant Namespace\CONST_NAME

4、全局命名空间

1)有些代码可能没有命名空间,这些代码是在全局命名空间中。
2)在命名空间中引用全局命名空间中的代码时,要在类、接口、函数、常量的名称前加\符号。

5、其他

1)如果引用类、接口、函数和常量时没有使用命名空间,PHP假定引用的内容在当前命名空间
2)如果这个假定不正确,PHP会尝试解析类、接口、函数和常量
3)如果需要在命名空间中引用其他命名空间的类、接口、函数和常量,则必须使用完全限定的类名(命名空间+类名),或者使用use关键字导入


原创粉丝点击