PHP 命名空间(namespace)

发布时间:2024年01月09日

PHP 命名空间(namespace)是在 PHP 5.3 中加入的,目的是解决重名问题,PHP中不允许两个函数或者类出现相同的名字,否则会产生一个致命的错误。

?

PHP 命名空间可以解决以下两类问题:

?

用户编写的代码与PHP内部的类/函数/常量或第三方类/函数/常量之间的名字冲突。

为很长的标识符名称(通常是为了缓解第一类问题而定义的)创建一个别名(或简短)的名称,提高源代码的可读性。

定义命名空间

默认情况下,所有常量、类和函数名都放在全局空间下,就和PHP支持命名空间之前一样。

?

命名空间通过关键字namespace 来声明。如果一个文件中包含命名空间,它必须在其它所有代码之前声明命名空间。

?

语法格式如下:

?

<?php ?

// 定义代码在 'MyProject' 命名空间中 ?

namespace MyProject; ?

?

// ... 代码 ... ?

你也可以在同一个文件中定义不同的命名空间代码,如:

?

<?php ?

namespace MyProject;

?

const CONNECT_OK = 1;

class Connection { /* ... */ }

function connect() { /* ... */ }

?

namespace AnotherProject;

?

const CONNECT_OK = 1;

class Connection { /* ... */ }

function connect() { /* ... */ }

?> ?

不建议使用这种语法在单个文件中定义多个命名空间。建议使用下面的大括号形式的语法。

文章来源:https://blog.csdn.net/2301_79799265/article/details/135416500
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。