Die einfachste Methode, die sich nach dem Studium der Dokumentation und Stackoverflow-Posts zum Thema PHPExcel ergeben hat, greift auf die PHPExcel_Worksheet::toArray()-Funktion zurück:
$objReader = PHPExcel_IOFactory::createReader(PHPExcel_IOFactory::identify($path)); $objReader->setReadDataOnly(true); $objPHPExcel = $objReader->load($path); $sheets = $objPHPExcel->getSheetNames(); $sheetsRev = array_flip($sheets); if(!isset($sheetsRev['Queries'])) { die('$sheetsRev[Queries] not set'); } $objSheet = $objPHPExcel->setActiveSheetIndex($sheetsRev['Queries']); $data = array(); foreach($objSheet->toArray() as $rowNum=>$row) { foreach($row as $cellNum=>$value) { ... } }
Es gibt eine andere Lösung, welche aber erforderlich macht, dass man die Dimension der einzulesenden Daten kennt; sprich die Anzahl der Spalten und Zeilen müssen vor der Iteration ausfindig gemacht werden. Mit toArray() überspringt man diesen unnötigen Schritt.
Ein Kommentar Kommentare
[…] Mit PHPExcel eine xlsx-Datei parsen und in MySQL importiereneMeidi hat ein kleines Tutorial veröffentlicht wie xlsx Dateien mit PHP verarbeitet werden können. […]