以下のような配列を重複したデータがあった場合に、label1
、label2
の順に重複したデータを重ね、階層状にまとめ上げた新たな配列を作りたい(label3
は一意なデータです)
どのように処理すれば良いでしょうか。
phpのバージョンは7.0です。
元々の配列
php
1 2$array = [ 3 0 => [ 4 'label1' => 'a1', 5 'label2' => 'b1', 6 'label3' => 'c1', 7 ], 8 1 => [ 9 'label1' => 'a1', 10 'label2' => 'b1', 11 'label3' => 'c2', 12 ] 13 2 => [ 14 'label1' => 'a2', 15 'label2' => 'b2', 16 'label3' => 'c3', 17 ] 18];
目的の配列
php
1 2$new_array = [ 3//label1、2の'a1','b1'は重複しているため、まとめ上げる。 4 'a1' => [ 5 'b1' => [ 6 'c1','c2', 7 ] 8 ] 9 ], 10 'a2' => [ 11 'b2' => 'c3', 12 ] 13 ] 14 ], 15];
回答2件
あなたの回答
tips
プレビュー