Перебор массива. Помогите )

Poganikus

Добрый день. Как из «Исходный массив» получить четыре массива элементов обеденный по совпадению ключей — [stage]?

Код (Text):
  1. Array // Исходный массив
  2. (
  3.     [0] => Array
  4.         (
  5.             [id] => 6804
  6.             [stage] => WON
  7.             [sum] => 7000.00
  8.             [direction] => 0
  9.         )
  10.  
  11.     [1] => Array
  12.         (
  13.             [id] => 17827
  14.             [stage] => WON
  15.             [sum] => 4000.00
  16.             [direction] => 0
  17.         )
  18.  
  19.     [2] => Array
  20.         (
  21.             [id] => 38389
  22.             [stage] => 9
  23.             [sum] => 4000.00
  24.             [direction] => 0
  25.         )
  26.     [3] => Array
  27.         (
  28.             [id] => 1233
  29.             [stage] => 9
  30.             [sum] => 4000.00
  31.             [direction] => 0
  32.         )
  33.     [4] => Array
  34.         (
  35.             [id] => 38389
  36.             [stage] => 4
  37.             [sum] => 4000.00
  38.             [direction] => 0
  39.         )
  40.     [5] => Array
  41.         (
  42.             [id] => 456345
  43.             [stage] => FINAL
  44.             [sum] => 4000.00
  45.             [direction] => 0
  46.         )
  47.  
  48. )

Надо получить результат.

Код (Text):
  1. Array // Совпадение WON
  2. (
  3.     [0] => Array
  4.         (
  5.             [id] => 6804
  6.             [stage] => WON // Совпадение WON
  7.             [sum] => 7000.00
  8.             [direction] => 0
  9.         )
  10.  
  11.     [1] => Array
  12.         (
  13.             [id] => 17827
  14.             [stage] => WON // Совпадение WON
  15.             [sum] => 4000.00
  16.             [direction] => 0
  17.         )
  18. )
  19.  
  20. Array // Совпадение 9
  21. (
  22.     [0] => Array
  23.         (
  24.             [id] => 87345
  25.             [stage] => 9  // Совпадение 9
  26.             [sum] => 4000.00
  27.             [direction] => 0
  28.         )
  29.     [1] => Array
  30.         (
  31.             [id] => 56534
  32.             [stage] => 9 // Совпадение 9
  33.             [sum] => 4000.00
  34.             [direction] => 0
  35.         )
  36. )
  37.  
  38. Array // Совпадение не найдены
  39. (
  40.     [0] => Array
  41.         (
  42.             [id] => 38389
  43.             [stage] => 4
  44.             [sum] => 4000.00
  45.             [direction] => 0
  46.         )
  47. )
  48.  
  49. Array // Совпадение не найдены
  50. (
  51.     [0] => Array
  52.         (
  53.             [id] => 456345
  54.             [stage] => FINAL
  55.             [sum] => 4000.00
  56.             [direction] => 0
  57.         )
  58. )
 

Drunkenmunky

PHP:
  1. <?php
  2. $array = Array // Исходный массив
  3. (
  4. /////////
  5. );
  6.  
  7. $new_array = array();
  8.  
  9. foreach($array as $arr)
  10. {
  11.   $new_array[$arr[‘stage’]][] = $arr;
  12. }
  13.  
  14. echo ‘<pre>’;
  15. print_r($new_array);
  16. ?>
 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *