Как мне перераспределить массив в другой массив определенной «формы». PHP

У меня есть массив моего инвентаря (ПРЕДМЕТЫ A и B)

Предметы A и B продаются наборами по 1 x A и 2 x B.

Предметы также имеют различные свойства, которые не имеют не влияет на то, как они распределяются по наборам.

Например:

$inventory=array(
array("A","PINK"),
array("A","MAUVE"),
array("A","ORANGE"),
array("A","GREY"),
array("B","RED"),
array("B","BLUE"),
array("B","YELLOW"),
array("B","GREEN"),  
array("B","BLACK")  
);

Я хочу перераспределить массив $ inventory, чтобы создать $ set (s), такие как

$set[0] => Array
                (
                    [0] => array(A,PINK)
                    [1] => array(B,RED)
                    [2] => array(B,BLUE)

                )

$set[1] => Array
                (
                    [0] => array(A,MAUVE)
                    [1] => array(B,YELLOW)
                    [2] => array(B,GREEN)

                )

$set[2] => Array
                (
                    [0] => array(A,ORANGE)
                    [1] => array(B,BLACK)
                    [2] => NULL

                )

$set[3] => Array
                (
                    [0] => array(A,GREY)
                    [1] => NULL
                    [2] => NULL

                )

Как вы можете видеть. Предметы перераспределяются в том порядке, в котором они появляются в инвентаре, чтобы создать набор из 1 x A и 2 x B. При создании набора цвет не имеет значения. Но мне нужно узнать, какой цвет в какой набор вошел после создания массива $ set. Наборы создаются до тех пор, пока не будет исчерпан весь инвентарь. Если элемент инвентаря не существует для включения в набор, вставляется значение NULL.

Заранее благодарим!

6
задан matt 30 August 2010 в 05:10
поделиться