$row) { if (!isset($row['data']) || !is_array($row['data'])) { error_log("Riga non valida, manca 'data' all'indice $index"); continue; } // 1. PARTE MONCLER + PARTE FORNITORE -> PARTE MONCLER $parte_values = []; $value_parte_moncler = trim((string)($row['data'][$parte_moncler_index] ?? '')); $value_parte_fornitore = $parte_fornitore_index !== false ? trim((string)($row['data'][$parte_fornitore_index] ?? '')) : ''; if ($value_parte_moncler !== '') { $parte_values[] = $value_parte_moncler; } if ($value_parte_fornitore !== '') { $parte_values[] = $value_parte_fornitore; } $parte_values = array_unique($parte_values); $excelData[$index]['data'][$parte_moncler_index] = implode(' - ', $parte_values); // 2. DESCRIZIONE PARTE MONCLER + DESCRIZIONE PARTE FORNITORE -> DESCRIZIONE PARTE MONCLER $descr_values = []; $value_descr_moncler = trim((string)($row['data'][$descr_parte_moncler_index] ?? '')); $value_descr_fornitore = $descr_parte_fornitore_index !== false ? trim((string)($row['data'][$descr_parte_fornitore_index] ?? '')) : ''; if ($value_descr_moncler !== '') { $descr_values[] = $value_descr_moncler; } if ($value_descr_fornitore !== '') { $descr_values[] = $value_descr_fornitore; } $descr_values = array_unique($descr_values); $excelData[$index]['data'][$descr_parte_moncler_index] = implode(' - ', $descr_values); // 3. COLORE MONCLER + COLORE FORNITORE -> COLORE MONCLER $colore_values = []; $value_colore_moncler = trim((string)($row['data'][$colore_moncler_index] ?? '')); $value_colore_fornitore = $colore_fornitore_index !== false ? trim((string)($row['data'][$colore_fornitore_index] ?? '')) : ''; if ($value_colore_moncler !== '') { $colore_values[] = $value_colore_moncler; } if ($value_colore_fornitore !== '') { $colore_values[] = $value_colore_fornitore; } $colore_values = array_unique($colore_values); $excelData[$index]['data'][$colore_moncler_index] = implode(' - ', $colore_values); // 4. COMPOSIZIONE TESSILE + COMPOSIZIONE TOTALE -> COMPOSIZIONE TESSILE $composizione_values = []; $value_composizione_tessile = trim((string)($row['data'][$composizione_tessile_index] ?? '')); $value_composizione_totale = $composizione_totale_index !== false ? trim((string)($row['data'][$composizione_totale_index] ?? '')) : ''; if ($value_composizione_tessile !== '') { $composizione_values[] = $value_composizione_tessile; } if ($value_composizione_totale !== '') { $composizione_values[] = $value_composizione_totale; } $composizione_values = array_unique($composizione_values); $excelData[$index]['data'][$composizione_tessile_index] = implode(' - ', $composizione_values); // 5. PACCHETTI TEST + TEST ADDIZIONALI -> PACCHETTI TEST $pacchetti_values = []; $value_pacchetti_test = trim((string)($row['data'][$pacchetti_test_index] ?? '')); $value_test_addizionali = $test_addizionali_index !== false ? trim((string)($row['data'][$test_addizionali_index] ?? '')) : ''; if ($value_pacchetti_test !== '') { $pacchetti_values[] = $value_pacchetti_test; } if ($value_test_addizionali !== '') { $pacchetti_values[] = $value_test_addizionali; } $pacchetti_values = array_unique($pacchetti_values); $excelData[$index]['data'][$pacchetti_test_index] = implode(' - ', $pacchetti_values); } error_log("Nuova routine completata con successo. Righe elaborate: " . count($excelData)); } catch (Exception $e) { error_log("Eccezione nella nuova routine: " . $e->getMessage()); throw $e; } }