当前位置 : 主页 > 网络编程 > PHP >

php命名空间之子命名空间是什么?

来源:互联网 收集:自由互联 发布时间:2021-08-10
上一篇文章中我们了解了命名空间,知道了如何去定义命名空间,有需要的请看《php命名空间之如何定义空间?》。这次我们向大家介绍子命名空间,有需要的可以参考参考。 在PHP中,
上一篇文章中我们了解了命名空间,知道了如何去定义命名空间,有需要的请看《php命名空间之如何定义空间?》。这次我们向大家介绍子命名空间,有需要的可以参考参考。

在PHP中,命名空间可以帮我们做成许多事情。可以让我们自己定义的名称不与php内部名称发生冲突,也可以给标识符起一个短点的名字,方便我们去使用和阅读。

而且它还有一个重要的功能,但是先让我们看一个小例子,看完之后再说这个功能是什么。

<?php
namespace MyProject\Sub\Level;  //声明分层次的单个命名空间

const CONNECT_OK = 1;
class Connection { /* ... */ }
function Connect() { /* ... */  }

?>

我们来看看这个,再来看看上篇文章中的命名空间。

<?php
namespace MyProject {
    const CONNECT_OK = 1;
    class Connection { /* ... */ }
    function connect() { /* ... */  }
}

namespace AnotherProject {
    const CONNECT_OK = 1;
    class Connection { /* ... */ }
    function connect() { /* ... */  }
}
?>

好好对比一下,有发现什么不同吗?

让我们将目光转移到namespace之后,单词是不是有点不一样,上面那个例子里单词与单词之间有“\”,而下面的就只是一个单词。大家都看出来了吧。

这就是它的另一个功能,子命名空间。子命名空间类似于目录和文件,并且PHP命名空间也允许我们指定分层名称空间的名称。所以,命名空间的名称也可以使用分层次的方式去定义。

根据我们现在对子命名空间的理解,我们去看例子,我们可以看到,在第一个php语句中,我们定义了三个指定分层名称空间的,它们分别是常量MyProject\Sub\Level\CONNECT_OK,类MyProject\Sub\Level\Connection和函数MyProject\Sub\Level\Connect

这样我们可以通过不同分层去找内容,方便我们去理解。

就说到这里了,有其他想知道的,可以点击这个哦。→ →php视频教程

以上就是php命名空间之子命名空间是什么?的详细内容,更多请关注自由互联其它相关文章!

网友评论