PHP之常量

在你有别的编程语言的基础下,你想学习PHP,可能要了解的一些关于常量的信息。
PHP中的常量不用指定数据类型,可以使用两次方法定义。

使用const

//定义常量
const B = 2;
echo B . PHP_EOL;

使用define

define("A", 1);
echo A . PHP_EOL;
$a = 2;
define("C" . $a, 3);
echo constant("C" . $a) . PHP_EOL;
echo C2;//不建议使用这种方式
print_r(get_defined_constants());//获取所有常量
print_r(get_defined_constants(true));//获取所有常量同时显示常量所在的文件
print_r(get_defined_constants(true)['user']);//获取所有常量同时显示常量所在的文件

const和define主要区别

const可以在类中使用,但是define不可以在类中使用

魔法常量

namespace sss;
echo "命名空间的名字是:" . __NAMESPACE__ . PHP_EOL;//输出当前命名空间
echo '这是第' . __LINE__ . '行' . PHP_EOL;
echo '这文件的路径是' . __FILE__ . PHP_EOL;
echo '这文件的目录是' . __DIR__ . PHP_EOL;class tt
{use Mt;function tt(){echo "类名为:" . __CLASS__ . PHP_EOL;echo "函数名为:" . __FUNCTION__ . PHP_EOL;echo __METHOD__ . PHP_EOL;//输出命名空间+类名+方法名}
}$tt = new tt();
$tt->tt();trait Mt
{public function mt(){echo "trait的名称为" . __TRAIT__ . PHP_EOL;}
}$tt->mt();

这里是全面的魔法常量
PHP 魔术常量|菜鸟教程
如果有不对的,希望各位大佬可以在评论区指出谢谢。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/71514.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机网络——子网掩码

一、子网掩码是什么?它长什么样? 子网掩码的定义 子网掩码是一个32位的二进制数字,与IP地址“配对使用”,用于标识IP地址中哪部分属于网络地址,哪部分属于主机地址。 示例:IP地址 192.168.1.10,…

Tomcat-web服务器介绍以及安装部署

一、Tomcat简介 Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。 Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用…

分布式存储—— HBase数据模型 详解

目录 1.3 HBase数据模型 1.3.1 两类数据模型 1.3.2 数据模型的重要概念 1.3.3 数据模型的操作 1.3.4 数据模型的特殊属性 1.3.5 CAP原理与最终一致性 1.3.6 小结 本文章参考、总结于学校教材课本《HBase开发与应用》 1.3 HBase数据模型 在开始学习HBase之前非常…

android中activity1和activity2中接收定时消息

android中activity1和activity2中接收定时消息 业务类 import java.util.Timer; import java.util.TimerTask;public class MyAnager {private MyAnager() {}private static MyAnager instance;//回调接口onRecvTaskpublic interface OnMsgListener {void onRecvTask(String a…

BitMap实现用户签到、UV统计

1. Redis 的 BitMap 概述 在 Redis 中,BitMap 并非一种独立的数据结构,而是基于 String 类型数据结构实现的一种存储方式。由于 String 类型的最大上限是 512M,换算成 bit 位就是 2^32 个,这决定了 BitMap 可操作的最大范围。Bit…

共享模型之管程(悲观锁)

共享模型之管程(悲观锁) 文章目录 共享模型之管程(悲观锁)一、常见线程安全的类二、对象头三、Monitor(监视器 / 管程)四、偏向锁偏向锁的实现原理撤销偏向锁 五、轻量级锁轻量级锁的释放 六、重量级锁七、…

网络安全ctf试题 ctf网络安全大赛真题

MISC 1 签到 难度 签到 复制给出的flag输入即可 2 range_download 难度 中等 flag{6095B134-5437-4B21-BE52-EDC46A276297} 0x01 分析dns流量,发现dns && ip.addr1.1.1.1存在dns隧道数据,整理后得到base64: cGFzc3dvcmQ6IG5zc195eWRzIQ 解…

centos7操作系统下安装docker,及查看docker进程是否启动

centos7下安装docker,需要用到的yun命令 (yum命令用于添加卸载程序) 1.设置仓库: yum-config-manager \--add-repo \http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 2.安装 Docker Engine-Community yum in…

私有云基础架构与运维(二)

二.私有云基础架构 【项目概述】 经过云计算基础知识及核心技术的学习后,希望进一步了解 IT 基础架构的演变过 程,通过学习传统架构、集群架构以及私有云基础架构的相关知识,认识企业从传统 IT 基 础架构到私有云基础架构转型的必要性。…

Linux 系统不同分类的操作命令区别

Linux 系统有多种发行版,每种发行版都有其独特的操作命令和工具。以下是一些常见的分类及其操作命令的区别: 1. 基于 Red Hat 的发行版 (RHEL, CentOS, Fedora) 1.1 包管理 安装软件包: bash复制 sudo yum install <package> 更新软件包: bash复制 sudo yum update…

‌PLC数据类型和‌C#数据类型的数据类型映射表

数据类型映射表 ‌PLC数据类型‌C#数据类型读取方式‌补充说明BitboolDBX布尔值BytebyteDBB单字节无符号整数WordushortDBW16位无符号整数DWorduintDBD32位无符号整数Intshort16位有符号整数DIntint32位有符号整数RealfloatDBR单精度浮点数LRealdoubleDBL双精度浮点数Stringstr…

windows部署spleeter 版本2.4.0:分离音频的人声和背景音乐

windows部署spleeter 版本2.4.0&#xff1a;分离音频的人声和背景音乐 一、Spleeter 是什么&#xff1f; Spleeter 是由法国音乐流媒体公司 Deezer 开发并开源的一款基于深度学习的音频分离工具。它能够将音乐中的不同音轨&#xff08;如人声、鼓、贝斯、钢琴等&#xff09;分…

QTS单元测试框架

1.QTS单元测试框架介绍 目前QTS项目采用C/C语言,而CppUnit就是xUnit家族中的一员,它是一个专门面向C的单元测试框架。因此,QTS采用CppUnit测试框架是比较理想的选择。 CppUnit按照层次来管理测试,最底层的就是TestCase,当有了几个TestCase以后&#xff0c;可以将它们组织成Te…

dify + ollama + deepseek-r1+ stable-diffusion 构建绘画智能体

故事背景 stable-diffusion 集成进 dify 后&#xff0c;我们搭建一个小智能体&#xff0c;验证下文生图功能 业务流程 #mermaid-svg-6nSwwp69eMizP6bt {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-6nSwwp69eMiz…

分享几个论文校对相关的deepseek提示词

论文校对 1.检查这段文字是否有语法或风格错误&#xff1a;[在此处粘贴您的文本]。 2.审查我的[文件类型&#xff0c;例如&#xff0c;“论文”]中的这一段落是否有语法或风格错误&#xff1a;[在此处粘贴您的文本]。 3.请审查我关于[具体主题&#xff0c;例如&#xff0c;…

【极光 Orbit•STC8A-8H】02. STC8 单片机工程模板创建

【极光 Orbit•STC8A-8H】02. STC8 单片机工程模板创建 七律 单片机 小小芯片大乾坤&#xff0c;集成世界在其中。 初学虽感千重难&#xff0c;实践方知奥妙通。 今天的讲法和过去不同&#xff0c;直接来一个多文件模块化的工程模板创建&#xff0c;万事开头难&#xff0c;…

mac安装nvm=>node=>nrm

下载并安装 NVM 运行以下命令下载并安装 NVM&#xff1a; curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.4/install.sh | bash 配置环境变量 vim ~/.zshrc 按 i 将如下代码复制进去&#xff0c;controlc &#xff0c;再按 :wq完成编辑 export NVM_DIR…

K8S学习之基础十一:k8s中容器钩子

容器钩子 容器钩子分为post-start和pre-stop post-start&#xff1a;容器启动后执行的命令 pre-stop&#xff1a;容器关闭前执行的命令&#xff0c;可用于优雅关闭 # 分别定义两个钩子&#xff0c;启动pod后更新index.html&#xff0c;关闭pod前正常关闭服务 vi post-pre.…

K8s 1.27.1 实战系列(三)安装网络插件

Kubernetes 的网络插件常见的有 Flannel 和 Calico ,这是两种主流的 CNI(容器网络接口)解决方案,它们在设计理念、实现方式、性能特征及适用场景上有显著差异。以下是两者的综合对比分析: 一、Flannel 和 Calico 1. 技术基础与网络实现 Flannel 核心机制:基于 Overlay …

【五.LangChain技术与应用】【24.LangChain RAG文本向量化与存储:智能检索的核心技术】

凌晨三点,北京中关村的某栋办公楼依然灯火通明。28岁的算法工程师小李盯着屏幕上的代码,突然拍案而起:"终于成了!"他开发的智能客服系统在连续失败78次后,首次准确识别出用户"我想换个能打游戏的便宜手机"的真实需求——需要兼顾游戏性能和价格的机型…