2015-02-06 78 views
-3

我有一個數組是這樣的:如何將數組值分組到新數組中?

$a = [ 
    '53' => ['Foo', 1], 
    '234' => ['Bar', 12], 
    '343' => ['Bar', 22], 
    '3' => ['Qux', 12], 
    '34' => ['Foo', 1], 
    ...] 

我想創建一個數組,看起來像這樣:

['1' => ['Foo', 'Foo'], 
'12' => ['Bar', 'Qux'] 
'22' => ['Bar']] 

也就是說,我想看看每個元素的第二個元素在$a中,並生成一個數組,該數組使用第二個元素作爲新數組中的索引,並將第一個元素值添加到數組中。

希望這是有道理的,可能有一個很好的方法來做到這一點,但我的PHP數組知識有點缺乏。

回答

4
$result = array(); 
foreach($a as $value) { 
    $result[$value[1]][] = $value[0]; 
}