1. 自定义常量
常量的值只能是标量数据(
boolean
,
integer
,
float
和
string
)或 null
。
常量一旦被定义,就不能被重新定义或者取消定义。
有两种定义方式:
- 用define()函数来定义常量
define('STATUS', 3); // 如果第三个参数设置为true,则大小写不敏感
echo STATUS;
- 用const关键字来定义常量
const NAME = 4;
echo NAME;
还可以
用函数
constant()
来获取常量的值。
使用defined()函数,
检查某个名称的常量是否存在。
2. 类常量
可以在类中定义常量,常量的值必须是一个定值,不能是变量,类属性或其它操作(如函数调用)的结果。但在PHP5.6中,对常量进行了增强,允许常量计算,允许使用包含数字、字符串字面值和常量的表达式结果来定义const常量。常量的值也可以为一个数组,但不能是变量。
定义类常量只能使用const关键字。
class MyClass {
const AB = 2;
public function showConstant(){
echo self::AB;
}
}
echo MyClass::AB;
$obj = new MyClass();
$obj -> showConstant();
MyClass::showConstant();
$className = 'MyClass';
echo $className::AB;