私は初期配列を持っています:
$arr0 = array(
0 => array(
'a' => 1,
'b' => 1
)
1 => array(
'a' => 2,
'b' => 1
)
2 => array(
'a' => 3,
'b' => 2
)
3 => array(
'a' => 4,
'b' => 3
)
4 => array(
'a' => 5,
'b' => 3
)
);
次のように、フィールド「b」のメンバーの値に応じて、個別の配列に分割したいと思います。
// $arr1 contains $arr0[0] and $arr0[1] because their value of 'b' is 1.
$arr1 = array(
0 => array(
'a' => 1,
'b' => 1
)
1 => array(
'a' => 2,
'b' => 1
)
);
// $arr2 contains $arr0[2] because its value of 'b' is 2.
$arr2 = array(
0 => array(
'a' => 3,
'b' => 2
)
);
// $arr3 contains $arr0[3] and $arr0[4] because their value of 'b' is 3.
$arr3 = array(
0 => array(
'a' => 4,
'b' => 3
)
1 => array(
'a' => 5,
'b' => 3
)
);
ここで、フィールド 'b' は任意の自然数の値を持つことができるので、常に 3 つの結果の配列が必要になるとは限りません。
ここで関連する質問 (および回答) を見つけましたが、「b」の元の値が何であるか、および異なる値がいくつあるかを事前に知らないため、私の問題は特定のものです。
何か案は?
(編集: $arr3 は $arr1 として書き込まれました)