<?php
try {
$array = array(
'a' => array ( 'id' => 20, 'names' => 'chimpanzee' ),
'b' => array ( 'id' => 40, 'name' => 'meeting' ),
'c' => array ( 'id' => 20, 'name' => 'dynasty' ),
'd' => array ( 'id' => 50, 'name' => 'chocolate' ),
'e' => array ( 'id' => 10, 'name' => 'bananas' ),
'f' => array ( 'id' => 50, 'name' => 'fantasy' ),
'g' => array ( 'id' => 50, 'name' => 'football' )
);
$result = array();
foreach($array as $key => $value){
$id = $value['id'];
if(!isset($result[$id])) $result[$id] = array();
$result[$id] = array($key => $value);
}
var_dump($result);
}catch(Exception $ex){
var_dump($ex);
}
?>