zl程序教程

您现在的位置是:首页 >  其他

当前栏目

PHP 命名空间介绍

2023-02-19 12:22:14 时间

1. 什么是命名空间


主要作用:解决命名冲突问题

命名空间是指人为的将内存分隔, 让不同内存区域的同名结构共存。

文件夹对于文件夹内的文件来说就充当了命名空间的角色,两个文件名相同的文件不同放在同一个文件夹下,但是可以放在不同的文件夹下

2. namespace 关键字声明命名空间


1. 命名空间第一次声明必须在所有代码之前

如果一个文件中包含命名空间, 必须在其他所有代码之前声明命名空间

但是 PHP7 严格模式(declare)除外, 严格模式声明可以放在声明命名空间之前

declare(strict_types = 1);

2. 单个文件中可以定义多个命名空间

namespace abc;
function var_dump()
{
    echo 'this is abc';
}
namespace def;
function var_dump()
{
    echo 'this is def';
}
var_dump();//this is def

3. 使用大括号在单个文件中定义多个命名空间

特别注意 : 使用该方式的文件在 {} 之外可能不存在任何代码

namespace abc
{
    function var_dump()
    {
        echo '123';
    }
}
namespace def
{
    function var_dump()
    {
        echo '456';
    }
}

3. 命名空间名称的命名规则


系统关键字不能作为空间名称, 如: list、echo

以字母或下划线开头, 有字母、下划线、数字组成