一、定义方式的区别
define:define是一个函数,用于定义常量,语法格式是define(name, value, case-insensitive)。其中,name是必需的,规定常量的名称;value是必需的,规定常量的值;case-insensitive是可选的,规定常量名是否对大小写敏感,默认是false。
const:const是一个语言构造器,用于定义常量,语法格式是const CONSTANT_NAME = value。
二、作用范围的区别
define:无论在何处定义,define定义的常量在整个脚本中都可以使用。
const:const定义的常量只能在定义它的作用区内访问,除非在全局范围内定义。
三、是否可以用于类常量的区别
define:define不能定义类常量,只能定义全局常量。
const:const可以用于定义类常量。
延伸阅读
PHP中的常量
在PHP中,常量是一个简单值的标识符(名称)。与变量不同,常量一旦定义就不能改变或者取消定义。常量的值可以是布尔值、整数、浮点数、字符串。
常量在整个脚本中都可以使用。常量是全局的,无论定义在何处,都可以在整个脚本(包括从其他文件中包含的文件)中使用。常量在定义后,其值不能改变。常量的名称前面没有$符号。