我正在寻找是否可以访问我之前在同一个数组中定义的键的值。
就像是:
$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
如果您经常需要这样做,您可以创建一个类,该类采用特定格式的键,该键向类构造函数标记,它应该被解析,直到所有相关键都被评估。