不过在PHP5.6之后const也可以接受常量的表达式了:
const BIT_5 = 1 PHP5.6之后有效,之前无效
define('BIT_5', 1 << 5); /.../ 一直有效
const的常量命名只能用直白的文本,而define()允许你用任何表达式来对常量命名。...$i, 1 << $i);
}
const定义的常量是大小写敏感的,但是define允许你将其第三个参数设置为true来关闭其对大小写的敏感:
define('FOO', 'BAR', true);
echo...FOO = 'BAR';
define('A\B\C\FOO', 'BAR');
自从PHP5.6后,使用const数组也能被定义为常量。...而define目前是不支持这一功能的,但是该功能会在PHP7中被实现:
const FOO = [1, 2, 3]; // 在PHP 5.6中有效
define('FOO', [1, 2, 3])