Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >PHP 命名空间介绍

PHP 命名空间介绍

作者头像
很酷的站长
发布于 2023-01-05 00:18:51
发布于 2023-01-05 00:18:51
1.9K00
代码可运行
举报
运行总次数:0
代码可运行
1. 什么是命名空间

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

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

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

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

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

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

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

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
declare(strict_types = 1);

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

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
namespace abc;
function var_dump()
{
    echo 'this is abc';
}
namespace def;
function var_dump()
{
    echo 'this is def';
}
var_dump();//this is def

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

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

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
namespace abc
{
    function var_dump()
    {
        echo '123';
    }
}
namespace def
{
    function var_dump()
    {
        echo '456';
    }
}
3. 命名空间名称的命名规则

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

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

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
PHP面向对象-命名空间的嵌套和别名
命名空间可以嵌套定义,这意味着一个命名空间可以包含另一个命名空间。使用嵌套命名空间时,我们可以使用反斜杠“\”来表示命名空间的层级结构。
堕落飞鸟
2023/04/28
1.3K0
PHP-命名空间
在一个大的项目中,可能会遇到同名的类、函数、常量,为了区分这些元素,我们可以将这些元素分别存放到不同的命名空间中。
cwl_java
2022/11/30
1.8K0
PHP 命名空间元素访问及use的使用
使用 as 时空间元素名称则被新名称取代, 原名称不能用了, 故不能称之为起别名, 应该是起新名
很酷的站长
2023/01/05
1.3K0
PHP 命名空间元素访问及use的使用
php面向对象16篇 命名空间的概述
核心概念:核心慨念都是自定义一个存储空间。避免类名重复系统无法判断该执行哪一个类或是哪一个函数。 问题? 自定义一个存储空间? 存储数据的空间. 问题? 类名重复系统无法判断该执行哪一个类或
贵哥的编程之路
2020/10/28
3400
PSR-12 编码规范扩充
此规范起到继承,扩展和替换 PSR-2 的作用, 同时编码风格遵守 PSR-1 这个基础编码标准。
mousemin
2023/06/10
8280
PHP命名空间学习笔记
从广义上来说,命名空间是一种封装事物的方法。在很多地方都可以见到这种抽象概念。例如,在操作系统中目录用来将相关文件分组,对于目录中的文件来说,它就扮演了命名空间的角色。具体举个例子,文件 foo.txt 可以同时在目录/home/greg 和 /home/other 中存在,但在同一个目录中不能存在两个 foo.txt 文件。另外,在目录 /home/greg 外访问 foo.txt 文件时,我们必须将目录名以及目录分隔符放在文件名之前得到 /home/greg/foo.txt。这个原理应用到程序设计领域就是命名空间的概念。
大江小浪
2019/02/22
1.7K0
php函数基础(一)
有效的函数名以字母或下划线开头,后面跟字母,数字或下划线,注意:不能用数字开头。
全栈程序员站长
2022/07/08
9430
php函数基础(一)
PHP自动加载与composer自动加载
当我们编写面向对象的程序时,通常是将类分别放在不同的文件中。但这样一来,当我们调用其他类的时候,则需要先手动引入该文件(否则会因为当前程序中没有该类名的类而报错)
仙士可
2019/12/19
2.1K0
PHP自动加载与composer自动加载
PHP自动加载与composer自动加载
当我们编写面向对象的程序时,通常是将类分别放在不同的文件中。但这样一来,当我们调用其他类的时候,则需要先手动引入该文件(否则会因为当前程序中没有该类名的类而报错)
宣言言言
2019/12/18
2.5K0
认真的了解一下PHP7带来了哪些重大的变革【基础】
PHP7带来的好处 是的,性能上的大幅度提升,可以省机器,可以省钱。 PHP7带来的新东西 1.类型的声明 可以使用字符串(string), 整数 (int), 浮点数 (float), 以及布尔值
友儿
2022/09/11
4850
PHP7新特性介绍
文内容根据PHP发布时的 new files 而来,链接地址 : PHP 7 new 特性一览 Added??operator Added <=> operato 新的操作符 ? // PHP 7之
wangxl
2018/03/07
8720
PHP命名空间与自动加载类详解
spl_autoload_register() 满足了此类需求。 它实际上创建了 autoload 函数的队列,按定义时的顺序逐个执行。相比之下, __autoload() 只可以定义一次。
用户2323866
2021/07/13
7630
PHP 编码规范
该 PHP 编码规范基本上是同 PSR 规范的。有一部分的编码规范 PSR 中是建议,此编码规范会强制要求。 此编码规范 是以 PSR-1 / PSR-2 / PSR-2扩展 为蓝本,并增加了相应的细节说明。
wangxl
2018/07/27
3.7K1
python的命名规则_python命名规则[通俗易懂]
1、模块模块尽量使用小写命名,首字母保持小写,尽量不要用下划线(除非多个单词,且数量不多的情况)# 正确的模块名importdecoderimport html_parser # 不推荐的模块名import decoder-特殊的如init模块,如果模块是包的私有模块会使用前缀加一个下划线。 包也是一样2、类名类名使用驼峰(camelcase)命名风格,首字母…
全栈程序员站长
2022/09/12
3.7K0
python的命名规则_python命名规则[通俗易懂]
PHP的命名空间
命名空间用来解决在编写类库或应用程序时创建可重用的代码如类或函数时碰到的两类问题:
老雷PHP全栈开发
2020/07/02
2K0
PHP笔记
PHP(Hypertext Preprocessor)即超文本预处理器,是在服务器中执行的脚本语言,WEB开发可以并入HTML,主要作用帮助开发人员快速开发动态网页。
腿子代码了
2023/12/23
2340
PHP笔记
PHP7新特性和变化
组合比较符号用于比较两个表达式。当 a 小于、等于或大于 b 时它分别返回-1、0或1,比较规则延续常规比较规则。对象不能进行比较
憧憬博客
2021/03/05
4K0
PHP7带来了哪些重大的变革,你知道吗?
PHP7带来的好处 在性能上的大幅度提升,可以省机器,可以省钱。 而且还带来了新的特性,我们一起来看看吧!
友儿
2022/09/11
1.1K0
PHP中命名空间是怎样的存在(一)?
命名空间其实早在PHP5.3就已经出现了。不过大部分同学可能在各种框架的使用中才会接触到命名空间的内容,当然,现代化的开发也都离不开这些能够快速产出的框架。这次我们不从框架的角度,仅从简单的代码角度来解析一下命名空间的概念和使用。
硬核项目经理
2020/04/08
9790
php代码抄写笔记
php变量类型松散,定义时变量一个类型,在之后可以赋予另一种类型的参数。 三种作用域:local、global、static global关键字用在函数内变量前表示声明以后使用的变量为全局变量。 static关键字用在函数内变量前表示该变量在函数执行完成后不销毁,且static关键字定义的变量赋予的仅是初始值,再次执行函数,不会执行定义中的赋值操作。
木尤
2020/07/14
4.1K0
相关推荐
PHP面向对象-命名空间的嵌套和别名
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档