2011-10-31 14 views
3

これは、共通の値に基づいて配列を再グループ化する方法を少し混乱させます。ここでは、以下の配列である:PHPマルチディメンションの配列グループ

Array 
(
[0] => Array 
    (
      [team] => 1 
      [id] => 5 
      [user] => teamleader1 
      [Designation] => Team Leader 
    ) 
[1] => Array 
    (
     [team] => 1 
     [id] => 6 
     [user] => consultant1 
     [Designation] => Consultant 
    ) 

[2] => Array 
    (
     [team] => 1 
     [id] => 7 
     [user] => consultant2 
     [Designation] => Consultant 
    ) 

[3] => Array 
    (
     [team] => 2 
     [id] => 8 
     [user] => consultant3 
     [Designation] => Consultant 
    ) 

[4] => Array 
    (
     [team] => 2 
     [id] => 9 
     [user] => teamleader2 
     [Designation] => Team Leader 
    ) 

) 

は、私は以下のようなそのチームの値によってグループそれに希望:

 
Array 
(
[1] => Array 
    (
    [0] => Array(
     [team] => 1 
     [id] => 5 
     [user] =>teamleader1 
     [Designation] => Team Leader 
    ) 
    [1] => Array(
     [team] => 1 
     [id] => 6 
     [user] =>consultant1 
     [Designation] => Consultant 
    ) 
    [2] => Array(
     [team] => 1 
     [id] => 7 
     [user] =>consultant2 
     [Designation] => Consultant 
    ) 
) 
[2] => Array 
    (
    [0] => Array(
     [team] => 1 
     [id] => 8 
     [user] =>consultant3 
     [Designation] => Consultant 
    ) 
    [1] => Array(
     [team] => 1 
     [id] => 9 
     [user] =>teamleader2 
     [Designation] => Team Leader 
    ) 
    ) 
) 

二つの主アレイグループは、チームそのものです。どんなアイデアや助けも大歓迎です。前もって感謝します!

よろしく

答えて

2
<?php 
$grouped = array(); 
foreach ($yourData as $item) { 
    // copy item to grouped 
    $grouped[$item['team']][] = $item; 
} 
var_dump($grouped); 

Demo

+0

ISSETに確認する必要はありません、それは存在していない場合、PHPはあなたのためにそれを作成します。 – hakre

+0

これは通知を叫ぶ。しかし、PHP5.3は実際にはそれを発生させません。それを知らなかった... - まだ変わっている。 – rodneyrehm

+0

これは通知を出すものではありません。http://codepad.org/VdoMnfTD、PHP 5.2:http://ideone.com/vPTKw – hakre

関連する問題