2016-02-01 3 views
0

Я пытаюсь объединить данные с такими же item, но разные serial. Результат должен объединить серийный с тем же артикул. Я пробовал array_merge_recursive, но не работает.PHP Array слияние с таким же значением

Item 84UZ9200143 массив должен быть

array(
'item' => '84UZ9200143', 
'qty' => 4, 
'serial' => '1001,1002,1003,1004' 
) 
or 
array(
'item' => '84UZ9200143', 
'qty' => 4, 
'serial' => array('1001',1002,1003,1004) 
) 

Это мой текущий массив

Array 
(
    [0] => Array 
     (
      [item] => LB5532024 
      [qty] => 1 
      [serial] => 
     ) 

    [1] => Array 
     (
      [item] => 84UZ9200143 
      [qty] => 1 
      [serial] => 1001 
     ) 

    [2] => Array 
     (
      [item] => 84UZ9200143 
      [qty] => 1 
      [serial] => 1002 
     ) 

    [3] => Array 
     (
      [item] => 84UZ9200143 
      [qty] => 1 
      [serial] => 1003 
     ) 

    [4] => Array 
     (
      [item] => 84UZ9200143 
      [qty] => 1 
      [serial] => 1004 
     ) 

    [5] => Array 
     (
      [item] => MFC-540 
      [qty] => 100 
      [serial] => asda 
     ) 

) 

Спасибо, ребята!

+1

Это может быть достигнуто с помощью итерации массива, нет функции направления, которая даст вам результат, который вы ожидаете. 1. серийный номер будет уникальным, 2. вы хотите добавить количество, 3. вы хотите присоединиться к последовательному сериалу. –

+1

@AmitShah, ты прав. Во всяком случае, я уже решил проблему с помощью итерации и с условием else. Благодаря! –

ответ

0

Это может быть достигнуто с помощью итерации массива. Нет функции направления, которая даст вам ожидаемый результат.

  1. пункт серийный будет уникальным,
  2. Вы хотите сложить количество,
  3. Вы бледный Concat сериалах.

Благодаря Amit

Смежные вопросы