PHP - 将函数值赋给类常量

时间:2011-04-02 22:40:59

标签: php

好的,这是一个愚蠢的问题,但我不能想到它是愚蠢的确切原因。

在php中定义类级别常量时,如:

const MY_CONSTANT = 'hello constant';

为什么不能使用

等函数初始化此值
const MY_FILEPATH = dirname(dirname(__FILE__)) . '/heres-my-file.php';

2 个答案:

答案 0 :(得分:18)

简而言之:解析时会替换常量,但在解释时会执行函数。解析器根本无法知道它应该设置内容的值。

答案 1 :(得分:1)

常量是不可变的。因此,如果函数可以改变常量的值,那么它就不会是常数。