и я хочу сгруппировать в другой массив по первому ключу из первого массива (например: 134, 180, 70, ...). Эти ключи повторяются, но поля разные.
Массив, который я хочу создать:
У меня есть большой массив (чтение из файла) [code]$data = array( array(134, 'Field_A_134', 'Field_B_134'), array(134, 'Field_C_134', 'Field_D_134'), array(134, 'Field_E_134', 'Field_F_134'), array(180, 'Field_A_180', 'Field_B_180'), array(70, 'Field_A_70', 'Field_B_70'), array(180, 'Field_C_180', 'Field_D_180'), ... ); [/code] и я хочу сгруппировать в другой массив по первому ключу из первого массива (например: 134, 180, 70, ...). Эти ключи повторяются, но поля разные. Массив, который я хочу создать: [code]array( '134' => array(array(134, 'Field_A_134', 'Field_B_134'), array(134, 'Field_C_134', 'Field_D_134'), array(134, 'Field_E_134', 'Field_F_134')), '180' => array(array(180, 'Field_A_180', 'Field_B_180'), array(180, 'Field_C_180', 'Field_D_180')), '70' => array(array(70, 'Field_A_180', 'Field_B_180')) ); [/code] Каждый ключ содержит массив массивов, содержащих первый ключ. Я пытался сделать это: [code]$f = array(); $pr = array(); foreach($data as $p){ if(isset($f[$p[0]])){ array_push($f[$p[0]], $p); } else { $f[$p[0]] = $p; } array_push($pr, $f); } [/code] но это не то, чего я хочу.