Как выполнить группировку в phpPhp

Кемеровские программисты php общаются здесь
Ответить
Гость
 Как выполнить группировку в php

Сообщение Гость »


У меня есть следующий массив, в котором есть элемент «CONSECUTIVO_GRUPO», который я хочу использовать в качестве ссылки для создания группы «RESPONSES» в массиве из трех позиций: CODIGO, ID_MODULO, VALOR. Исходный массив:
Массив
(размер=14) 0 => массив (размер=5) 'CODIGO' => строка '447' (длина = 3) 'CONSECUTIVO_GRUPO' => строка '1' (длина = 1) 'ID_MODULO' => строка '20' (длина = 2) 'ID_GRUPO' => строка '39' (длина = 2) 'VALOR' => строка '2023-09-05' (длина = 10) 1 => массив (размер=5) 'CODIGO' => строка '449' (длина = 3) 'CONSECUTIVO_GRUPO' => строка '1' (длина = 1) 'ID_MODULO' => строка '20' (длина = 2) 'ID_GRUPO' => строка '39' (длина = 2) 'VALOR' => строка '0' (длина = 1) 2 => массив (размер=5) 'CODIGO' => строка '450' (длина = 3) 'CONSECUTIVO_GRUPO' => строка '1' (длина = 1) 'ID_MODULO' => строка '20' (длина = 2) 'ID_GRUPO' => строка '39' (длина = 2) 'VALOR' => строка '5' (длина = 1) 3 => массив (размер=5) 'CODIGO' => строка '451' (длина = 3) 'CONSECUTIVO_GRUPO' => строка '1' (длина = 1) 'ID_MODULO' => строка '20' (длина = 2) 'ID_GRUPO' => строка '39' (длина = 2) 'VALOR' => строка '0' (длина = 1) 4 => массив (размер=5) 'CODIGO' => строка '452' (длина = 3) 'CONSECUTIVO_GRUPO' => строка '1' (длина = 1) 'ID_MODULO' => строка '20' (длина = 2) 'ID_GRUPO' => строка '39' (длина = 2) 'VALOR' => строка '2' (длина = 1) 5 => массив (размер=5) 'CODIGO' => строка '473' (длина = 3) 'CONSECUTIVO_GRUPO' => строка '1' (длина = 1) 'ID_MODULO' => строка '22' (длина = 2) 'ID_GRUPO' => строка '39' (длина = 2) 'VALOR' => строка 'M' (длина = 1) 6 => массив (размер=5) 'CODIGO' => строка '478' (длина = 3) 'CONSECUTIVO_GRUPO' => строка '1' (длина = 1) 'ID_MODULO' => строка '22' (длина = 2) 'ID_GRUPO' => строка '39' (длина = 2) 'VALOR' => строка '0' (длина = 1) 7 => массив (размер=5) 'CODIGO' => строка '475' (длина = 3) 'CONSECUTIVO_GRUPO' => строка '1' (длина = 1) 'ID_MODULO' => строка '22' (длина = 2) 'ID_GRUPO' => строка '39' (длина = 2) 'VALOR' => строка '0' (длина = 1) 8 => массив (размер=5) 'CODIGO' => строка '446' (длина = 3) 'CONSECUTIVO_GRUPO' => строка '1' (длина = 1) 'ID_MODULO' => строка '20' (длина = 2) 'ID_GRUPO' => строка '39' (длина = 2) 'VALOR' => строка 'H102' (длина = 4) 9 => массив (размер=5) 'CODIGO' => строка '472' (длина = 3) 'CONSECUTIVO_GRUPO' => строка '1' (длина = 1) 'ID_MODULO' => строка '22' (длина = 2) 'ID_GRUPO' => строка '39' (длина = 2) 'VALOR' => строка 'H102' (длина = 4) 10 => массив (размер=5) 'CODIGO' => строка '473' (длина = 3) 'CONSECUTIVO_GRUPO' => строка '2' (длина = 1) 'ID_MODULO' => строка '22' (длина = 2) 'ID_GRUPO' => строка '39' (длина = 2) 'VALOR' => строка 'M' (длина = 1) 11 => массив (размер=5) 'CODIGO' => строка '478' (длина = 3) 'CONSECUTIVO_GRUPO' => строка '2' (длина = 1) 'ID_MODULO' => строка '22' (длина = 2) 'ID_GRUPO' => строка '39' (длина = 2) 'VALOR' => строка '0' (длина = 1) 12 => массив (размер=5) 'CODIGO' => строка '475' (длина = 3) 'CONSECUTIVO_GRUPO' => строка '2' (длина = 1) 'ID_MODULO' => строка '22' (длина = 2) 'ID_GRUPO' => строка '39' (длина = 2) 'VALOR' => строка '0' (длина = 1) 13 => массив (размер=5) 'CODIGO' => строка '472' (длина = 3) 'CONSECUTIVO_GRUPO' => строка '2' (длина = 1) 'ID_MODULO' => строка '22' (длина = 2) 'ID_GRUPO' => строка '39' (длина = 2) 'ДОБЕЛЬНОСТЬ' => строка «H108» (длина = 4) Мне нужна группировка по CONSECUTIVO_GRUPO, вот так;

{ «КОНСЕКУТИВО»: «2», «ГРУПО»: «1», "РЕСПУЕСТАС": [ [ «94», "76" ], [ «96», «26,3» ], [ «160», "170" ], [ «163», "12,3" ], [ «207», "130" ], [ «208», "90" ], [ «259», "2019-10-02" ], [ «260», "2" ], [ «261», "З358" ], [ «1209», "СП" ], [ «1296», "5" ], [ «1297», "0" ] ] }, { «КОНСЕКУТИВО»: «3», «ГРУПО»: «1», «РЕСПУЕСТАС»: [ [ "94", "76" ], [ "96", "26.3" ], [ "160", "170" ], [ "163", "14.6" ], [ "207", "130" ], [ "208", "90" ], [ "259", "2019-10-18" ], [ "260", "2" ], [ "261", "Z358" ], [ "1209", "SP" ], [ "1296", "10" ], [ "1297", "0" ] ] }, I haven't found a way to do it, could someone help me please, I have the following code:
$result = []; foreach ($rsp as $answer){ $result[] = array( "CONSECUTIVO" => $answer['CONSECUTIVO_GRUPO'], "GRUPO" => $answer['ID_GRUPO'], "RESPUESTAS" => array( array( $answer['CODIGO'], $answer['ID_MODULO'], $answer['VALOR'] ) ) ); }
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»