PHP 简明教程

PHP 常量

1. PHP 常量

常量类似于变量,但不同之处在于:常量一旦被定义,就无法被更改或撤销定义。

常量是用于存储简单值的标识符(名称)。在脚本的整个运行期间,该值都不能被改变。

命名规则:有效的常量名称必须以字母或下划线开头(常量名称前面不要$ 符号)。

2. PHP define() 函数

define() 函数用于在运行时(run-time)定义一个常量。

define() 函数始终在全局作用域内定义常量,它可以被声明在条件代码块(如 if/else、循环、函数)中。不过,它不能用于定义类常量(class constants)。

2.1 语法

define(CONSTANT_NAME, value);

参数说明:

  • CONSTANT_NAME - 规定常量的名称(名称区分大小写)
  • value - 规定常量的值

2.2 示例

使用 define() 创建一个名为 "GREETING" 的常量:

define("GREETING", "Welcome to Begindev.com!");
echo GREETING;

下面的示例展示了在函数内部声明一个常量,并在函数外部输出它的情况(这证明了它是全局作用域):

function myTest() {
  define("GREETING", "Welcome to Begindev.com!");
}

myTest();

echo GREETING;

3. PHP const 关键字

const 关键字用于在编译时(compile-time)定义一个常量。

使用 const 关键字定义的常量必须在顶层作用域(top-level scope)中声明,因为它们是在编译阶段被处理的。这意味着,您不能在函数、循环、if/else 语句或 try/catch 块内部使用 const 来声明常量。

此外,使用 const 关键字定义的常量通常可用于定义类常量。const 定义的常量同样是区分大小写的。

3.1 语法

const CONSTANT_NAME = value;

3.2 示例

使用 const 创建一个名为 "GREETING" 的常量:

const GREETING = "Welcome to Begindev.com!";
echo GREETING;

4. PHP 数组常量

在 PHP 中,您同样可以使用 define()const 来创建数组常量(Array Constants):

4.1 示例

创建数组常量的示例代码:

// 使用 define() 定义数组常量
define("CARS", array("Volvo", "BMW", "Toyota"));
echo CARS[0];

// 使用 const 定义数组常量
const ANIMALS = array("Cat", "Dog", "Horse");
echo ANIMALS[1];