2014-01-29 36 views
0

在创建多维数组时可以为键分配变量值吗? 例如:带密钥的PHP多维数组赋值

//creates array 
$arr = array(
    'First' => array(), 
    'Second' => array() 
); 

//assigns strings to variables 
$name = 'First'; 
$once = 'Name'; 
$twice = 'Age'; 
$thrice = 'Whatever'; 

//loops twice to create arrays 
do { 
    $arr[$name][] = $once => array(), $twice => array(), $thrice => array(); 
    $once = 'Another'; 
    $twice = 'Example'; 
    $thrice = 'You get the point'; 
    if ($name == 'First') { 
     $name = 'Second'; 
    } else { 
     $name = 'end'; 
    } 
} while ($name == 'Second'); 

上面的例子几乎没有有意义的生活的事,何况我的办公桌上的金属片。如果上述不能用变量完成,那么我怎么可以用键创建一个多维数组而没有明确地编码它呢?提前致谢。

编辑: 要澄清一下,这里有一个样本调用数组我想提出:

echo $arr['Second']['Another'][2]; 

数组的第三维的部分将用循环分配不包括在内,即2.我很难创建第二个维度。

+0

也许你所期望的结果看起来像您可以添加...?就像你说的那样,它没有任何意义。 – deceze

回答

1

我认为这就是你在找什么

foreach ($arr as $key => &$value) 
{ 
    $value[] = array('name' => 'test', 'age' => 28); 
}