rss twitter

PHP: Excel Dateien lesen

Heute möchte ich euch anhand eines praktischen Beispiels zeigen, wie man mit Hilfe von dem PHPExcelReader Excel Dateien einlesen kann. Die von Vadim Tkachenko erstellte Klasse kann man sich auf Sourceforge kostenlos herunterladen.

Das folgende Beispiel zeigt wie man mit wenigen Zeilen eine Excel Datei lesen und anzeigen lassen kann:

PHP:
  1. <?php
  2. require_once 'reader.php';
  3.  
  4. $objExcel = new Spreadsheet_Excel_Reader();
  5. $objExcel->read('input.xls');
  6.  
  7. for ($i = 1; $i <= $objExcel->sheets[0]['numRows']; $i++) {
  8.     var_dump($objExcel->sheets[0]['cells'][$i]);
  9. }
  10. ?>


Der var_dump Befehl gibt genau eine Zeile des Excel Dokuments aus. Zu beachten ist, dass der Array-Index nicht bei 0 sondern bei 1 beginnt.

In meinem Fall wollte ich Daten aus einer Excel Datei in eine Datenbank schreiben:

PHP:
  1. <?php
  2. error_reporting(E_ALL ^ E_NOTICE);
  3.  
  4. mysql_connect('localhost', 'root', '');
  5. mysql_select_db('excel');
  6.  
  7. require_once 'reader.php';
  8.  
  9. $objExcel = new Spreadsheet_Excel_Reader();
  10. $objExcel->setOutputEncoding('CP1251');
  11. $objExcel->read('input.xls');
  12.  
  13. for ($i = 2; $i <= $objExcel->sheets[0]['numRows']; $i++) {
  14.     $strQuery = "INSERT INTO `data` SET
  15.         `exportingCountry` = '" . $objExcel->sheets[0]['cells'][$i][2] . "',
  16.         `exportingCountryCode` = '" . $objExcel->sheets[0]['cells'][$i][1] . "',
  17.         `importingCountry` = '" . $objExcel->sheets[0]['cells'][$i][4] . "',
  18.         `importingCountryCode` = '" . $objExcel->sheets[0]['cells'][$i][3] . "',
  19.         `year` = '" . $objExcel->sheets[0]['cells'][$i][5] . "',
  20.         `quantity` = '" . $objExcel->sheets[0]['cells'][$i][6] . "'";
  21.     echo mysql_query($strQuery) ? 'Query erfolgreich<br />' : 'Query nicht erfolgreich<br />';
  22. }
  23. ?>

Falls ihr Probleme mit der Einbindung oder dem Einlesen der Excel Dateien habt, hinterlasst ruhig einen Kommentar. Gerne lese ich auch Kommentare über Alternativen oder/und euren Erfahrungen.

4 Antworten zu “PHP: Excel Dateien lesen”

  1. Lars Kummle sagt:

    Hallo,

    danke erstmal für das gute Beispiel….hätte mir früher auf die Füsse fallen sollen :-)

    Habe 4.99 Euro investiert und dbTube.org gekauft. Funz auch ganz gut. => Alternative. Dummerweise nicht frei.

    Da der Sourcecode dabei ist kann man dann das ganze noch im gewissen Grad anpassen….wenn man gut PHP kann ;-)

  2. Valdemar sagt:

    Da der Sourcecode dabei ist kann man dann das ganze noch im gewissen Grad anpassen….wenn man gut PHP kann ;-)
    +1

  3. Bio sagt:

    Hi,
    Hatte auch gesucht.
    dbTube.org ist aber eine echte Alternative.
    Und 4.99 ist ja wirklich nicht unerschwinglich.

  4. [...] http://www.beautifycode.de/php-excel-dateien-lesen Dieser Beitrag wurde unter PHP abgelegt am 10. Januar 2013 von Hendrik. [...]

Kommentar hinterlassen

Powered by WordPress | Free T-Mobile Phones for Sale | Thanks to Palm Pre Blog, Video Game Music and Get Six Pack Abs