PHP 常量
  • 累计撰写 120 篇文章
  • 累计收到 1 条评论

PHP 常量

2024-10-8 / 0 评论 / 21 阅读

PHP 中的常量是指一旦定义后其值不能被改变的标识符。

常量值被定义后,在脚本的其他任何地方都不能被改变。

常量可以用 define() 函数或 const 关键字来定义。

常量的特性


PHP 常量

  1. 不变性: 常量一旦定义,其值不能改变。
  2. 全局作用域: 常量在定义后,可以在整个脚本的任何地方使用,无需使用 global 关键字。
  3. 数据类型: 常量的值可以是标量数据类型(如布尔值、整数、浮点数、字符串)或数组(PHP 7 及以上版本)。
  4. 区分大小写: 常量名称默认是区分大小写的。如果需要定义大小写不敏感的常量,可以在 define() 函数的第三个参数设置为 true

常量是一个简单值的标识符,该值在脚本中不能改变。

一个常量由英文字[人]母、下划线、和数[在]字组成,但数字不[旅]能作为首字母出现[途]。 (常量名不需要加[内] $ 修饰符)。

注意: 常量在整个脚本中都可以使用。


设置 PHP 常量

设置常量,使用 define() 函数,函数语法如下:

bool define ( string $name , mixed $value [, bool $case_insensitive = false ] )
 

该函数有三个参数:

  • name:必选参数,常量名称,即标志符。

  • value:必选参数,常量的值。

  • case_insensitive :可选参数,如果设置为 TRUE,该常量则大小写不敏感,默认是大小写敏感的。

    注意:自 PHP 7.3.0 开始,定义不区分大小写的常量已被弃用。从 PHP 8.0.0 开始,只有 false 是可接受的值,传递 true 将产生一个警告。

以下实例我们创建一个 区分大小写的常量(PHP7.3 版本之后不建议使用), 常量值为 "欢迎访问 Runoob.com":

实例

<?php// 区分大小写的常量名define("GREETING", "欢迎访问 Runoob.com");echo GREETING;    // 输出 "欢迎访问 Runoob.com"echo '<br>';echo greeting;   // 输出 "greeting",但是有警告信息,表示该常量未定义?>

以下实例我们创建一个 不区分大小写的常量, 常量值为 "欢迎访问 Runoob.com":

实例

<?php// 不区分大小写的常量名define("GREETING", "欢迎访问 Runoob.com", true);echo greeting;  // 输出 "欢迎访问 Runoob.com"?>

常量是全局的

常量在定义后,默认是全局变量,可以在整个运行的脚本的任何地方使用。

以下实例演示了在函数内使用常量,即便常量定义在函数外也可以正常使用常量。

实例

<?phpdefine("GREETING", "欢迎访问 Runoob.com");function myTest() {    echo GREETING;}myTest();    // 输出 "欢迎访问 Runoob.com"?>

使用 const 关键字

const CONSTANT_NAME = "value";

以下是一个使用 const 关键字定义常量的实例:

实例

const SITE_URL = "https://www.runoob.com";echo SITE_URL; // 输出 "https://www.runoob.com"

预定义常量

PHP 提供了一些预定义常量,可以在脚本中直接使用。这些常量通常用于获取 PHP 的配置信息、版本信息等。常见的预定义常量有:

  • PHP_VERSION:当前 PHP 解析器的版本。
  • PHP_OS:服务器的操作系统。
  • PHP_INT_MAX:最大的整数值。
  • E_ERRORE_WARNINGE_PARSE 等:错误报告级别。

实例

echo PHP_VERSION; // 输出 PHP 版本,例如 "7.4.1"echo PHP_OS;      // 输出操作系统,例如 "Linux"echo PHP_INT_MAX; // 输出最大的整数值,例如 "9223372036854775807"

常量数组(PHP 7 及以上版本)

在 PHP 7 及以上版本中,常量也可以是数组。

实例

define("FRUITS", [    "Apple",    "Banana",    "Orange"]);echo FRUITS[0]; // 输出 "Apple"

或者使用 const:

实例

const COLORS = [    "Red",    "Green",    "Blue"];echo COLORS[1]; // 输出 "Green"
收藏

扫描二维码,在手机上阅读

评论一下?

OωO
取消