浅析PHP中的名称空间概念 浏览:458

1中的命名空间是什么。php

什么是名称空间在广义上,命名空间是一种封装的东西。这个抽象的概念可以在很多地方看到,例如,在操作系统中,目录是用来组相关的文件和目录中的文件,它具有命名空间的作用。例如,文件foo.txt可以存在在目录/家/格雷戈和/家/其他在同一时间,但没有两foo.txt文件在同一目录中。此外,当我们访问文件目录/国内外foo.txt /格雷戈,我们必须把目录名和目录分隔符在文件名前面让 /家/格雷戈/ foo.txt文件。这个原则在规划领域的应用是命名空间的命名空间概述概念。

怎么做2。PHP名称空间理解吗

本质上,名称空间是容器。我们可以把类、函数和变量放进去。它们可以在同一名称空间中进行访问。除了名称空间外,还必须引用或导入其他名称空间来调用它们包含的项。

名称空间与shell中文件目录的概念相同。在当前目录中,您可以直接使用文件名访问所有文件。如果需要访问其他目录中的文件,则需要输入相对路径或绝对路径。

引用方法:

复制代码代码如下所示:

命名空间Foo;

类Foo {

公共函数富()

{

返回顶部amespace 酒吧酒吧::他妈的();

}

}



导入模式:

复制代码代码如下所示:

命名空间Foo;

使用上amespace 酒吧酒吧;

类Foo {

公共函数富()

{返回栏::操();

}

}



导入相当于将目标类的一个副本复制到当前名称空间中。

三.3的实际应用是什么。PHP的命名空间

命名空间的存在是为了解决以下两个问题:

1)。用户编写的代码与PHP中的类/函数常量或第三方类/函数常数的名称相冲突。

2)。为长标识符名称创建一个昵称(简称)(通常用于缓解第一类问题),以提高源代码的可读性。

4。一些提示

1。直接调用相同空间下属于一个大家庭。例如,PageController班在Laravel可以直接写入页::所有()的代码调用页面模型,因为它们都是顶级命名空间下。

2、如果一个类存在于一个非顶级命名空间中,那么它只能被其他类调用或导入,这些类也被称为当前命名空间。他们属于一个大家庭,任何subnamespace是另一个命名空间,和其他容器没有除集装箱间的关系的任何特殊关系。

3,Laravel使用ClassMap模式自动加载(加载)。虽然PHP的命名空间的高级功能,这是唯一合乎逻辑的关系,需要文件仍然存在。这类文件 /供应商/作曲家/ autoload_classmap.php之间的对应关系,每一次的作曲家转储加载编译生成。
推荐文章1
广告