• 締切済み

配列をほかの配列の値で複数のグループに分けする(新しい配列を作る)には

配列をほかの配列の値で複数のグループに分けする(新しい配列を作る)にはどうすればよいのでしょうか? 以下のような配列があります。 $sensyu = Array( [0] => Array([IDs] => 1 [usName] => 小林 [uPosition] => センター) [1] => Array([IDs] => 2 [usName] => 山田 [uPosition] => ガード) [2] => Array([IDs] => 3 [usName] => 鈴木 [uPosition] => フォワード) [3] => Array([IDs] => 4 [usName] => 佐藤 [uPosition] => センター) [4] => Array([IDs] => 5 [usName] => 小林 [uPosition] => ガード) ) この配列を、別の配列($edited)の値でグループ分けしたいです。 例: $edited = array(2&4,1&5); $editedに[IDs]の値があるものはグループA($groupA)値が無いものはグループB($groupB)にする。 グループAは , でグループ分け($groupA[0],$groupA[1])となるようにする。 結果 $groupA = Array( [0] => Array( [0] => Array([IDs] => 2 [usName] => 山田 [uPosition] => ガード) [1] => Array([IDs] => 4[usName] => 佐藤 [uPosition] => センター) ) [1] => Array( [0] => Array([IDs] => 1 [usName] => 小林 [uPosition] => センター) [1] => Array([IDs] => 5 [usName] => 小林[uPosition] => ガード) ) ) $groupB = Array( [0] => Array([IDs] => 3 [usName] => 鈴木 [uPosition] => フォワード) もしくは$groupBを作らず元の配列を $sensyu = Array( [0] => Array([IDs] => 3 [usName] => 鈴木 [uPosition] => フォワード) とする。

みんなの回答

  • UmJammer
  • ベストアンサー率58% (115/196)
回答No.1

$sensyuをforeachでループ処理にかけて、IDsで振り分けて新しい配列を作っていけばよいと思います。