PHP - 在数组初始化期间从先前定义的键访问值

时间:2012-06-20 20:37:50

标签: php arrays

我正在查看是否可以访问我之前在同一个数组中定义的键的值。

类似的东西:

$test = array(
    'foo' => 1,
    'bar' => $test['foo']
);

我知道我可以在初始化后总是这样做,我只是想知道在初始化期间是否可以这样做?

1 个答案:

答案 0 :(得分:0)

不,在评估完整构造函数之前,$test不存在。

例如:http://codepad.viper-7.com/naUprJ

Notice: Undefined variable: test..
array(2) { ["foo"]=> int(1) ["bar"]=> NULL }

这可能是最好的。想象一下这个有用:

$test = array('foo' => $test['foo']); // mwahaha

如果你需要做很多事情,你可以创建一个类,它接受一个特定格式的键,该类标记给类构造函数,它应该被解析,直到评估完所有相关的键。