我正在寻找是否可以访问我之前在同一数组中定义的键的值。
像这样:
$test = array(
'foo' => 1,
'bar' => $test['foo']
);
我知道初始化后我总是可以这样做,我只是想知道在初始化期间是否可以这样做?
不,在评估完整的构造函数之前,$test
不存在。
例如:http://codepad.viper-7.com/naUprJ
Notice: Undefined variable: test..
array(2) { ["foo"]=> int(1) ["bar"]=> NULL }
这可能是最好的。想象一下这个工作:
$test = array('foo' => $test['foo']); // mwahaha
如果你需要做很多事情,你可以创建一个类,该类采用特定格式的键,该键向类构造函数标记,在评估所有相关键之前,应对其进行解析。