Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] xls per php lesen

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Erledigt] xls per php lesen

    Ich suche eine Funktion oder eine Klasse, mit der ich ein xls-File per PHP einlesen und Zeile für Zeile parsen kann.

    Beispiel:

    Überschriftzeile
    id | text | wert

    Datenzeilen:
    101 | abc | 12345
    102 | def | 23579
    103 | ghi | 34567
    usw. ca. 10.000 Zeilen

    Als ergebnis brauche ich dann zB nach Lesen der ersten Datenzeile:
    PHP-Code:
    $row = array();
    $row[0] = '101';
    $row[1] = 'abc';
    $row[2] = '12345'
    und nach einem weiteren Schleifendurchlauf die Daten der zweiten Zeile wieder in $row

    Hat jemand so was im Schrank liegen und kann es mir zur Verfügung stellen?

    Alternativ würde auch ein Script helfen, welches eine xls-datei in eine csv-Datei konvertiert - die csv kann ich dann ja einfach weiterverarbeiten.

    Da ich mehrere Ordner mit zusammen rund 7000 xls-Dateien so verarbeiten müsste, scheidet ein manuelles konvertieren xls->csv aus.
    PHP-Code:
    if ($var != 0) {
      
    $var 0;



  • #2
    MS-Excel Stream Handler (xls, spreadsheet, excel reader, ms-excel stream handler) - PHP Classes
    --

    „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
    Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


    --

    Kommentar


    • #3
      Merci Fielmann - auf phpclasses.org bin ich angemeldet und hab dort auch gesucht, aber offensichtlich nicht richtig
      Das müsste klappen.
      PHP-Code:
      if ($var != 0) {
        
      $var 0;

      Kommentar


      • #4
        Ich benutze dafuer php-excel-reader - Project Hosting on Google Code

        Kommentar


        • #5

          Das Dingens ist sehr einfach zu bedienen und insofern sehr empfehlenswert. Für den nächsten :

          PHP-Code:
          require_once 'excel_reader2.php';

          $datei 'spreadsheet.xls';
          $data = new Spreadsheet_Excel_Reader($datei,false);

          $anzahlzeilen  $data->rowcount($sheet_index=0); 
          $anzahlspalten $data->colcount($sheet_index=0);

          for ( 
          $zeile $zeile <= $anzahlzeilen $zeile++ ) {
              
          $row = array();
              for ( 
          $spalte $spalte <= $anzahlspalten $spalte++ ) {
                  
          $row[] = $data->val($zeile,$spalte);
              }
              
          $ausgabe implode (' | ' $row );
               echo 
          $ausgabe '<br>';

          Vielen Dank - ich setze das mal auf erledigt
          PHP-Code:
          if ($var != 0) {
            
          $var 0;

          Kommentar


          • #6
            Danke für den Code,

            habe die BIC auslesen müssen und habe das Skript folgender Maßen angepasst, falls es mal jemand braucht.

            PHP-Code:
            /**
             * Alle BIC in Array schreiben, aber nur die, wo in der Spalte BIC auch etwas steht
             */
            $anzahlzeilen  $data->rowcount($sheet_index=0);
            $anzahlspalten $data->colcount($sheet_index=0);
            $rows = array();
            for ( 
            $zeile $zeile <= $anzahlzeilen $zeile++ )
            {
                if(!
            $data->val($zeile3) == "")
                {
                    
            $rows[$data->val($zeile1)] = array(
                        
            'blz' => $data->val($zeile1),
                        
            'bankname' => $data->val($zeile2),
                        
            'bic' => $data->val($zeile3)
                    );
                }

            Kommentar

            Lädt...
            X