以下内容严重破坏了我的网站:
define('FOO', get_foo());
但是,以下工作正常:
define('FOO', 'BAR');
你不能在定义中使用函数,这不好。定义用于创建常量。常量不得更改,必须始终具有相同的值。函数(如 get_foo())可以返回不同的值。Php 认为你想把可更改的值放在常量上。如果此函数将结果放入变量:
$foo = get_foo();
因为 define() 需要常量的值而不是函数的返回值:
常量的值;只允许标量值和空值。 标量值为整数、浮点数、字符串或布尔值。是的 可以定义资源常量,但不建议这样做 并可能导致不可预知的行为。