390
Php编程
PHP中的命名空间namespace
命名空间是一种代码的组织形式,是一种封装事物的方法。命名空间将代码划分出不同的空间(区域),每个空间里面的类、函数和常量互不影响。虽然任何PHP代码都可以包含在命名空间中,但只有几种类型的代码受到命名空间的影响:类(包括抽象类和traits)、接口、函数和常量。
为什么要使用命名空间?
使用命名空间是为了解决面向对象编程过程中用户编写的类、函数、常量与PHP内部或第三方的类、函数、常量名字冲突问题。
命名空间通过关键字namespace来声明。如果一个文件中包含命名空间,则它必须在所有代码之前声明。
然后执行结果如下:
这时提示找不到name类,这是因为我们定义的name类是在name1和name2命名空间下的,要想使用这个类,需要把命名空间也加上:
执行结果:
还可以先使用use关键字将命名空间导入,然后再使用
执行结果:
PHP还允许指定层次化的命名空间:
执行结果:
注意这里的name1\name2只是命名空间的层次划分,并没有包含和被包含的关系,也不是目录的层级关系。
如果没有定义任何命名空间,则默认是在全局空间中,与PHP引入命名空间概念前一样,我们平时写的不带命名空间的代码都在全局空间中,在名称前面加上\表示该名称是全局空间中的名称,在其他命名空间中可以通过这种方式使用全局空间中的类、函数、常量等。
关注PHP技术宅宅是人的天性,也是一种境界!
长按指纹识别图中二维码(微信号:phpjsz)
您看此文用·秒,分享只需1秒呦~
最后更新:2017-10-08 21:36:12