2013-03-13 50 views
-1

确定的另一个关键,所以这是一个超级福利局问题...分配数组键的值相同的数组PHP

创建阵列时,有没有什么办法,我可以一键的值赋给另一个关键在同一个数组中?

例如:

<?php 
$foobarr = array (
    0 => 'foo', 
    1 => $foobarr[0] . 'bar', 
); 
?> 

在这个例子中$foobarr[1]保持值 '栏'。

任何方式我可以这样做,以便$foobarr[1] == 'foobar'

+5

问题是,为什么你需要这样做? – 2013-03-13 13:53:30

+0

不是那样的 - 在赋值给'$ foobarr'之前,'='右边的语句被赋值,所以在数组结构中'$ foobarr'还不存在。 – Emissary 2013-03-13 13:53:49

+0

@MarkoD说了什么。你试图解决什么问题?如果没有这种特殊的技术手段,可能有办法解决这个问题,而这在PHP中不起作用。 – 2013-03-13 13:54:13

回答

1

如果单独指定的按键你可以这样做:

$foobarr = array(); 
$foobarr[0] = 'foo'; 
$foobarr[1] = $foobarr[0] . 'bar'; 

等,但并不是所有的初始化内一次 - 阵列中还不存在。

2

不,你不能这样做,因为当你试图用$foobarr[0]来引用它时,数组还没有被构造。

可以为您节省'foo'另一个变量,虽然,只是使用:

$foo = 'foo'; 
$foobarr = array (
    0 => $foo, 
    1 => $foo . 'bar', 
); 
+0

+这更可读。 – dfsq 2013-03-13 13:55:15

0

当然,你需要虽然引用它外面。

$foobarr = array (
    0 => 'foo' 
); 
$foobarr[1] = $foobarr[0] . 'bar';