PHP中命名空间的本质是容器,可以起到封装的作用。
在这个容器中中我们可以放入变量,函数,类。
php命名空间概念的理解可以类比于文件目录,在操作系统中目录用来将相关文件分组,对于目录中的文件来说,它就扮演了命名空间的角色。
上面root文件夹下包含两个子文件夹sub1和sub2,sub1和sub2就相当于两个容器,起到封装的作用,可以在两个文件下定义相同的文件sub2.php,因为他们是互不干扰的。要在sub1.php文件中引用同级目录下sub2.php中的内容,直接包含进来就行了(include('sub2.php')),但在sub1.php中引用sub2下的sub2.php中的内容,就要使用到文件分隔符,具体来说是include('../sub2/sub2.php')。
php中命名空间的相互引用也要用到类似于文件分隔符一样的东西。
PHP命名空间的实际应用:
命名空间可以解决下面两个问题:
(1)用户编写的代码与PHP内部的类/函数/常量或第三方类/函数/常量之间的名字冲突。
(2)为很长的标识符创建一个别名,提高代码的可读性,减少代码的编写量。