所在的位置: php >> php介绍 >> PHP实战技巧10命名空间

PHP实战技巧10命名空间

前言

以前其实写过关于命名空间的文章,感觉写的太多,反而不容易理解,这篇文章给大家做总结性的整理。

什么是命名空间

等同于我们电脑的“文件夹”,解决“类、函数、常量”的重名冲突问题。将同名的“类”放在不同的“命名空间”,等同于同名的文件,放在不同的文件夹。

基本语法

定义命名空间

namespacex;一般写在文件顶端,之后出现的所有代码,都属于这个命名空间。

x这个类似于文件夹的名字,名字随便写(好像你新建文件夹一样)

PS:同一代码文件可定义多个命名空间,但一般没有人这么做。

定义子命名空间

namespacex\y;和多级文件夹的概念一样。

使用其他命名空间的类

使用类时,必须带上命名空间。命名空间也有相对路径、绝对路径的说法,具体请参考下面的代码

导入其他命名空间的类

每次都要带上命名空间的路径,很麻烦,所以有了use

PS:use永远都是绝对路径。

实战意义

对多数项目而言,命名空间没什么用

命名空间,本质是为了解决类名冲突。而大多数项目规模不大,不使用命名空间也不会冲突。

目前大多数项目,都离不开命名空间

既然没用,为什么还离不开?

因为命名空间还有另外一个用处:自动包含类文件。

只要你的命名空间路径和代码文件所在的硬盘路径一致,就能借助某些方法自动include()类文件,而免去了手动管理之苦。

某些方法是什么方法?

满足PSR1的代码规范即可,大家有兴趣可以自行搜索。

目前所有的PHP框架,都使用了这个特性,所以必须学会使用命名空间。

总结

命名空间,原本是为了解决某些项目“类名冲突”的问题,对多数人并没有多少用处。但因为能借此免去手动管理类文件之苦,所以盛行。




转载请注明:http://www.aierlanlan.com/rzfs/5863.html