开发者学堂课程【PHP 进阶教程-由浅入深掌握面向对象开发-第三阶段:命名空间子空间】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/713/detail/12723
命名空间子空间
内容简介:
一:子空间的概念
二:子空间具体使用示例
三:小结
一:子空间的概念
子空间:subspace,即在已有空间之上,再在内部进行空间划分,让每个小空间独立起来。
子空间的本质是路径的分层,可以无限层。
子空间可以基于已有的空间创建,也可以直接创建,使用反斜杠分隔\。
#基于已有父空间
namespace father ;
namespace father\son;
#直接创建子空间
namespace mother\daughter;
二:具体使用示例
1.命名空间子空间是直接通过 namespace +路径符号\实现。
(一般先尝试定义父空间,再定义子空间)
#定义父空间
Namespace space;
function display(){ }
#定文子空间
Namespace space\space1;
function display( ){ }
2.子空间的创建不一定非要在前面创建了上级空间,即可以直接在某个脚本中创建子空间。
#直接定义子空间
namespace space\space2
function display(){ }
(space2 是基于space的,namespace特点的声明是 function display(){} 是属于对应的空间,所以可以先有子空间,再归至父空间。)
三:小结
1.子空间也是通过 namespace 实现,用 namespace + \区分上下级空间名。
2.基于一个脚本中通常只有一个空间名,所以子空间的创建可以直接创建。不用一定先创建一级空间,但是一般是存在上级空间的,而不是凭空创建子空间。在项目里,一个脚本只会定义一个空间,所以一般情况下,父空间有父空间的直接定义法,子空间也是直接定义。
3.子空间理论上可以创建无限多层,但是实际层次根据项目需求确定(一般不超过四层,三层居多)。