是否可以从同一个数组中的指定键获取值?

问题描述:

我在想我是否可以在我的数组中选择任何键,并将其设置为另一个键的值。为了更清楚(因为我的问题可能不够清晰),我尝试做这样的事情:是否可以从同一个数组中的指定键获取值?

$variable = array(
    'key' => 'value', 
    'key2' => $variable['key'] 
); 

正如你所看到的,它不会工作(除非我做这样的事情:$variable['key2'] = $variable['key']出的数组,但这不是我正在查找的内容,只有当我不能在同一个数组内完成时才会使用它)。

我搜索的任何解决方案,但至今还没有找到一个...

有没有办法做到在同一阵列内这样的事情?

非常感谢您

+2

答案很简单:没有,这是不可能的,因为'$ variable'尚不存在于时间点。 – arkascha

这样,你不能老是这样做,因为这关键还不存在。

为什么要在同一个数组中存储两个相同的变量?也许向我们展示你想要做的更大的事情,所以我们可以帮助你。

把它看作是做FIRST中括号的代码。由于$变量尚未设置,您将在$ variable ['key']上得到一个错误,因为$变量还不是数组。

您必须设置$variable

$variable = new array(); 
    $variable['key'] = $variable->key2 = 'value'; 

此外

//create array 
$variable = array(
     'key' => 'value' 
    ); 
    //then override 
$variable = array(
     'key2' => $variable['key'], 
     'key' => 'new_value' 
    );