常量可以是标识符或简单的名称,可以分配任何固定的值。它们类似于变量,不同之处在于它们永远不能被更改。它们在整个程序中保持恒定,并且在执行过程中不能被更改。
一旦定义了常量,就不能取消定义或重新定义它。常量标识符应按照约定写成大写。默认情况下,常量始终区分大小写,除非另有说明。
常量名称不能以数字开头,必须以字母或下划线开头,后跟字母、数字或下划线。除下划线外,不应包含任何特殊字符,如前所述。
创建PHP常量
在PHP中,使用define()函数创建常量,如下所示:
语法:
define(name, value, case_insensitive)
参数如下:
name:常量的名称。
value:要存储在常量中的值。
case_insensitive:定义常量是否不区分大小写。默认情况下,此值为False,即区分大小写。
示例:
<?php
// 这将创建一个区分大小写的常量
define("WELCOME", "GoodsforCook");
echo WELCOME, "\n";
// 这将创建一个不区分大小写的常量
define("HELLO", "GoodsforCook", true);
echo hello;
?>
输出:
GoodsforCook
GoodsforCook
constant()函数
除了使用echo语句之外,还可以使用constant()函数来打印常量。
语法:
constant(name)
示例:
<?php
define("WELCOME", "GoodsforCook!!!");
echo WELCOME, "\n";
echo constant("WELCOME");
// 与之前相同
?>
输出:
GoodsforCook!!!
GoodsforCook!!!
常量是全局的:默认情况下,常量自动是全局的,在脚本中可以随处使用,在任何函数内外都可以访问。
示例:
<?php
define("WELCOME", "GoodsforCook");
function testGlobal() {
echo WELCOME;
}
testGlobal();
?>
输出:
GoodsforCook
常量 vs 变量
一旦定义了常量,就不能取消定义,但可以轻松取消定义变量。
在分配期间不需要在常量前使用美元符号($),但在声明变量时我们使用美元符号。
只能使用define()函数定义常量,不能通过任何简单的赋值来定义。
常量不需要遵循任何变量作用域规则,可以在任何地方定义。