📜  php 常量 - PHP (1)

📅  最后修改于: 2023-12-03 15:33:37.718000             🧑  作者: Mango

PHP常量

简介

常量在 PHP 中是一个固定值,不可更改。与变量不同的是,常量被定义后不能再次被修改或撤销定义。常量一般用于存储不会改变的数据,如配置信息、数据库连接数据等。

定义常量

在 PHP 中,可以使用 define() 函数来定义常量。define() 函数需要两个参数,第一个参数是常量的名称,第二个参数是常量的值。

define('PI', 3.14);

以上代码定义了一个名为 PI 的常量,并将其值设为 3.14

当常量被定义后,就可以在程序中使用它了,如:

echo PI;

输出结果为:

3.14
常量命名规则

常量名称必须以字母或下划线开头(不能以数字开头),常量名称不需要使用 $ 符号,常量名称默认不区分大小写。

以下是常量命名规则的示例:

define('APP_NAME', 'MyApp');
define('ADMIN_EMAIL', 'admin@example.com');
魔术常量

PHP 还有一些特殊的常量,被称为魔术常量。这些常量的值在不同的上下文中会发生变化。以下是几个常用的魔术常量:

  • __LINE__:代表当前的行号。
  • __FILE__:代表当前文件的完整路径和文件名。
  • __DIR__:代表当前文件所在的目录。
  • __FUNCTION__:代表当前函数的名称。
  • __CLASS__:代表当前类的名称。
  • __TRAIT__:代表当前 trait 的名称。
  • __METHOD__:代表当前方法的名称。
  • __NAMESPACE__:代表当前命名空间的名称。

以下是使用魔术常量的示例:

echo __FILE__; // 输出当前文件的完整路径和文件名
常量作用域

常量的作用域和变量不同。常量被定义后,在整个程序中都可以被访问,包括函数内部。因此,常量没有作用域限制。

以下是常量作用域的示例:

define('PI', 3.14);

function getCircleArea($radius) {
    return PI * $radius * $radius;
}

echo getCircleArea(10); // 输出 314
常量数组

PHP 还支持定义常量数组。定义常量数组的方法与定义普通数组类似,只需要使用 define() 函数即可。

以下是定义常量数组的示例:

define('COLORS', array('red', 'green', 'blue'));

在程序中使用常量数组的示例:

echo COLORS[0]; // 输出 red
总结

常量在 PHP 中是不可更改的固定值,常量一般用于存储不会改变的数据。常量可以使用 define() 函数来定义,常量名称必须以字母或下划线开头,常量名称默认不区分大小写。PHP 还有一些特殊的常量,被称为魔术常量,如 __FILE____LINE__ 等。常量的作用域和变量不同,常量没有作用域限制,可以在整个程序中被访问。PHP 还支持定义常量数组。