/ / Foreach mehrdimensionales Array in PHPExcel - PHP, Arrays, mehrdimensionales Array, foreach

Foreach multidimensionales Array in PHPExcel - php, Arrays, multidimensionales Array, foreach

Wie kann ich ein mehrdimensionales Array in PHP Excel schleifen?

Das ist mein Code

$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]);
}

Aber es gibt mir dieses Ergebnis

Bildbeschreibung hier eingeben

Was ich will, ist A2 - D2 wird horizontal durchlaufen dann werden als nächstes A3 - D3 so weiter und so fort

lese das schon foreach mehrdimensionales Array kann es aber immer noch nicht verstehen.

Antworten:

2 für die Antwort № 1

Jeden $i++ erhöht den Wert von $i. In der ersten Schleife sollten alle Werte in die 2. Reihe und dann in die 3. Reihe eingefügt werden. Daher müssen Sie den Wert erhöhen, nachdem die Werte in die entsprechende Zelle eingefügt wurden. Versuchen -

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++;
}