在声明之前调用数组元素

Ald*_*nto 1 php arrays

对不起这个问题,但我对此案感到好奇.好的,例如我有一个数组元素:

<?php

     $data = array(
        'key1' => 'val1',
        'key2' => 'val2',
        'key3' => $data['key2'] //the point
     );

?>
Run Code Online (Sandbox Code Playgroud)

我知道它会出错,因为我调用了一个元素,而数组还没有声明.但这样做有可能吗?事实上,价值'key2'是动态的.

Nie*_*sol 8

不,但你可以轻松地做到这一点:

$data = [
    "key1"=>"val1",
    "key2"=>"val2"
];
$data["key3"] = $data["key2"];
Run Code Online (Sandbox Code Playgroud)

甚至$data["key3"] = &$data["key2"];可以通过引用链接它们.