日期:2014-05-16  浏览次数:20461 次

请问如何用键名分组?
$arr1 = array (
'0' => array ('fid' => 1, 'tid' => 1 , 'name' =>'Name2' ),
'2' => array ('fid' => 1, 'tid' => 1,  'name' =>'Name1' ),
'1' => array ('fid' => 1, 'tid' => 5 , 'name' =>'Name3' ),
'3' => array ('fid' => 1, 'tid' => 7 , 'name' =>'Name4' ),
'4' => array ('sid' => 2, 'tid' => 9,  'name' =>'Name5' ),
'5' => array ('cid' => 2, 'tid' => 9,  'name' =>'Name5' )
);


请问有什么最快的方法可以以键名fid,sid,cid分组。

------解决方案--------------------
考虑到各成员数组的键名排列可能不一致,即 sid 可能在 name 后面
可将
  $k = key($v);
改为
  $k = key(array_intersect_key(array('fid' => '', 'sid' => '', 'cid' => ''), $v));