Hej, mam problem z pzrerobieniem jednego formatu tablicy na inny.
Powiedzmy, że mam tablicę:
array ( [0
] => array( [atr1
] => jakas_wartosc1
, [atr_id
] => 15
), [1
] => array( [atr1
] => 'jakas_wartosc2, [atr_id] => 15), [2] => array( [atr1] => 'jakas_wartosc3
, [atr_id
] => 15
), [3
] => array( [atr1
] => 'jakas_wartosc4, [atr_id] => 15), [4] => array( [atr1] => 'jakas_wartosc5
, [atr_id
] => 99
), [5
] => array( [atr1
] => 'jakas_wartosc6, [atr_id] => 99), [6] => array( [atr1] => 'jakas_wartosc7
, [atr_id
] => 1
), [7
] => array( [atr1
] => 'jakas_wartosc8, [atr_id] => 1), [8] => array( [atr1] => 'jakas_wartosc9
, [atr_id
] =>1) )
Jak widac, mamy cztery elementy o atr_id = 15, trzy o atr_id = 1 i dwa o atr_id = 99. Chcę to przerobić tak, żeby tablica wyglądała w ten sposób:
array ( [15
] => array ( jakas_wartosc1
, jakas_wartosc2
, jakas_wartosc3
), [99
] => array ( jakas_wartosc5
, jakas_wartosc6
), [1
] => array ( jakas_wartosc7
, jakas_wartosc8
, jakas_wartosc9
) )
Czyli chodzi o to, żeby wyłapać
MAKSYMALNIE trzy elementy o tym samym atr_id z pierwszej tablicy, pobrac ich "atr1" i na tej podstawie stworzyc kolejny element w drugiej tablicy. Jezeli są dwa elementy o tym samym atr_id to bierzemy tylko te dwa. Jesli jednak jest więcej niż trzy (jak w przykładzie o atr_id=15, bierzemy trzy pierwsze).
Jak to ładnie zrobić?