PHP8 常量:定义、使用与高级特性
PHP8 常量:定义、使用与高级特性
常量是在脚本执行过程中值不能改变的标识符,与变量相比,常量具有全局可见性(默认情况下)和不可修改的特性。PHP8 对常量的处理进行了增强,提供了更灵活的定义方式和更多功能。本文将详细介绍 PHP8 中常量的定义、类型、作用域及新特性。
常量的基本概念与定义方式
1. 常量的特点
- 常量的值在定义后不能被修改或重新定义
- 常量默认具有全局作用域,可在脚本任何地方访问
- 常量名通常使用大写字母,多个单词用下划线分隔(如
MAX_SIZE) - 常量可以是标量类型(整数、浮点数、字符串、布尔值)或数组,PHP7 后支持类常量为数组
2. 定义常量的方式
(1)define() 函数(传统方式)
define() 函数是定义常量的传统方式,适用于全局常量。
// 定义标量常量
define('PI', 3.14159);
define('SITE_NAME', 'My Website');
define('ENABLED', true);
// 定义数组常量(PHP7+支持)
define('FRUITS', ['apple', 'banana', 'cherry']);
// 使用常量(无需$符号)
echo PI; // 输出:3.14159
echo SITE_NAME; // 输出:My Website
echo ENABLED ? '启用' : '禁用'; // 输出:启用
echo FRUITS[1]; // 输出:banana
(2)const 关键字(推荐方式)
const 关键字在 PHP5.3+ 引入,是定义常量的语言结构,比 define() 更高效,推荐优先使用。