/ / Foreach array multidimensionale in PHPExcel - php, array, array multidimensionale, foreach

Foreach array multidimensionale in PHPExcel - php, array, array multidimensionale, foreach

Come posso eseguire il loop dell'array multidimensionale in PHP Excel?

Questo è il mio codice

$objWorkSheet = $this->excel->createSheet(1); //Setting index when creating
$colors = array(
array("A1", "B1", "C1", "D1"),
array("A2", "B2", "C2", "D2"),
array("A3", "B3", "C3", "D3")
);

$i = 2;
foreach ($colors as $values) {
$objWorkSheet->setCellValue("A".$i++, $values[0]);
$objWorkSheet->setCellValue("B".$i++, $values[1]);
$objWorkSheet->setCellValue("C".$i++, $values[2]);
$objWorkSheet->setCellValue("D".$i++, $values[3]);
}

Ma mi dà questo risultato

inserisci la descrizione dell'immagine qui

Quello che voglio è A2 - D2 loop in orizzontale quindi successivo A3 - D3, quindi così via e così via

già letto questo foreach array multidimensionale ma ancora non posso prenderlo.

risposte:

2 per risposta № 1

Ogni $i++ incrementa il valore di $i. Nel primo ciclo tutti i valori dovrebbero essere messi in seconda fila, poi in terza e così via. Quindi è necessario incrementare il valore dopo che i valori sono stati inseriti nella rispettiva cella. Provare -

foreach ($colors as $values) {
$objWorkSheet->setCellValue("A".$i, $values[0]);
$objWorkSheet->setCellValue("B".$i, $values[1]);
$objWorkSheet->setCellValue("C".$i, $values[2]);
$objWorkSheet->setCellValue("D".$i, $values[3]);
$i++;
}