2017-11-14 3 views
1

Ich bin neu mit PHPexcel und die Bibliothek zu lernen, wie ich weitermachen kann, ich bin in der Lage, die Daten auf einem bestimmten sheet und einem bestimmten Bereich zu erhalten. Unten ist mein Code.PHPexcel rangeArray() wie man als Tabelle ausgibt

require_once 'PHPExcel/IOFactory.php'; 

$inputFileType = 'Excel5'; 
$inputFileName = './data/MYexcelData.xls'; 
$sheetname = 'Sheet1'; 

/** Create a new Reader of the type defined in $inputFileType **/ 
$objReader = PHPExcel_IOFactory::createReader($inputFileType); 
/** Advise the Reader of which WorkSheets we want to load **/ 
$objReader->setLoadSheetsOnly($sheetname); 
/** Load $inputFileName to a PHPExcel Object **/ 
$objPHPExcel = $objReader->load($inputFileName); 


$myDataArray = $objPHPExcel->getActiveSheet()->rangeToArray('A2:J30', NULL, True, True); 

ich in der Lage bin, die Daten zu bekommen, wenn ich print_r verwenden

print_r($myDataArray); 

Jetzt i auf stecke, wie die Daten richtig ausgegeben, ich möchte eine Tabelle td für jetzt, um es wie eine aussehen Zelle.

$i = 0 ; 

    foreach($myDataArray as $row){ 

     echo "<td>".$row[$i]."</td>"; 

     $i++; 

    } 

Aber ich bekomme einen Fehler. Jeder Vorschlag wäre großartig! Vielen Dank.

Notice: Undefined offset: 10

Antwort

0

Es sieht aus wie Sie ein mehrdimensionales Array von Daten abrufen, wie Sie mehrere Spalten und mehr Zellen in Ihrem Excel-Zellbezug haben. Sie müssen also zwei foreach Loops verwenden, eins ineinander.

foreach ($myDataArray as $row) { 
    echo "<tr>"; 
    foreach ($row as $cell) { 
     // use cell data here 
    } 
    echo "</tr>"; 
} 
+0

Es funktionierte dank! keine Ahnung, dass es ein mehrdimensionales Array zurückgibt. –