在常量中不能使用字符串连接吗?

时间:2012-08-10 13:35:41

标签: php constants

const
   SOME_PATH = __DIR__ . '/blabla.bla';

不起作用我得到一个解析错误:

  

期待','' or';''

WTF!?

2 个答案:

答案 0 :(得分:5)

在声明类常量或属性时,只能使用常量值。没有变量表达式。

答案 1 :(得分:2)

问题不在于常数,而在于您使用非文字将类变量定义为字符串。

const SOME_PATH = __DIR__;

很好,但是一旦你开始使用连接,解析器就会抛出一个混合物。

这与其工作原理相同:

class myClass {
    public $something = "something";
}

但这不是:

class myClass {
    public $something = "some" . "thing";
}