当前位置:首页 > 编程开发 > PHP > 正文内容

php中命名空间(namespace)的作用和使用

Codefans3年前 (2022-05-11)PHP1532

1.命名空间的作用:

在PHP中函数、类、常量是不允许同名的。为了解决这三者的同名问题,所以出现了命名空间. 其实不仅仅是php,其他语言也有类似的使用。比如JavaScript中:

20181201105307520.png

我们来详细的讲解一下PHP中的命名空间:

语法:namespace 空间名\空间名;

说明: 用于定义空间名;如果一个php文件中,第一个空间的定义义必须放在第1行。如果所要定义的空间已存在,则是进入空间。代码示例如下:

20181201105511533.png

2.空间成员:所谓空间成员就是,空间所影响的,空间只影响类、函数、常量(const)

3.空间成员的访问:访问方式分为限定,非限定,完全访问,之间的区别,我们使用代码来说明一下。

20181201110344283.png

但是在实际的使用中,我们很多类和方法都是在不同的文件中,这就涉及到引入的问题,也就是在实际开发中,我们经常会在一个文件中引入另一个php文件。这种情况下有两种情况:

当前文件有空间的定义,被引入的文件中没有空间的定义,但是有空间成员。被引入的空间成员会被放在公共空间(根空间)

代码示例如下:

20181201110654508.png

第二种情况:当前文件有空间的定义,被引入的文件中有空间的定义,并不会中断当前空间的定义。

20181201110828605.png

4.引入空间成员

1.use 空间名\空间名 【as 别名】:将指定空间引入到当前空间。同可以使用as关键字为被引入的空间起个别名。

20181201111001732.png

2.use 空间名\空间名\成员类 【as 别名】:将指定的空间中的成员引入到当前空间,引入空间成员只能引入类。

20181201111009264.png

5.空间命名的方式:空间名我们可以任意的定义,但是如果命名更有意义呢。一般我们会以类文件所在的文件夹为空间名。其实主要的就是方便按照某种约定成俗的规则加载文件。

这里我们只是简单的介绍了一下命名空间的作用和使用。其实很多框架内部也是这样的使用。不同的类在不同的空间,相互之间的引用也是遵循着相应引入规则。

扫描二维码推送至手机访问。

版权声明:本文由图慧网发布,如需转载请注明出处。

本文链接:http://www.tuh8.com/?id=28

分享给朋友:

“php中命名空间(namespace)的作用和使用” 的相关文章

Nginx/Apache支持PATH_INFO模式

默认情况下,nginx和apache是不支持path_info的,我们需要做些配置让它支持。首先需要启用cgi.fix_pathinfo——修改php配置文件php.ini,将;cgi.fix_pathinfo=1前面的冒号;去掉,重启php服务。然后再配置Nginx或Apache。Nginx配置说...