Daten aus CSV-DAtein extrahieren und in TXT-Datei abspeichen mittels PHP

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

  • #16
    Wenn du nur gewisse Spalten willst, dann musst du das auch festlegen
    PHP-Code:
    //Nehmen wir an du willst die erste die dritte und die vierte Spalte in die Textdatei haben. Die einzelnen Werte sind durch ein Leerzeichen getrennt
    foreach($temp as $wert){
        
    $tempo .= $wert[0].' '.$wert[2].' '.$wert[3]."\r\n";

    Vergiss $schreiben. Du willst ja $tempo in die Datei schreiben.

    Gruss

    tobi
    Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

    [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
    Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

    Kommentar


    • #17
      COOOL!!! TAUSEND DANK. Ich hab zwar gewusst, dass ich es da irgendwo angeben muss, welche Spalten ich verwenden will, wusste aber nicht wie :-(

      Jetzt ist es fast perfekt. Ich möchte jetzt zwei txt-Dateien beschreiben. Das hat vorhin auch wunderbar funktioniert. Mein jetztiger Code sieht so aus:

      PHP-Code:
      <?php
      $datei 
      'daten.csv';
      $tempo '';
      $inhalt file($datei);
      foreach(
      $inhalt as $wert){
          
      $temp[] = explode(';',$wert);
      }
      foreach(
      $temp as $wert){
          
      $tempo .= $wert[2].' '.$wert[1].' '.$wert[4]."\r\n";
      }
      $datei1 'ausgabe_1.txt';
      $fp fopen($datei1,'w');
      fwrite($fp,$tempo);
      fclose($fp);

      ?>
      <?php
      $datei 
      'daten.csv';
      $tempo '';
      $inhalt file($datei);
      foreach(
      $inhalt as $wert){
          
      $temp[] = explode(';',$wert);
      }
      foreach(
      $temp as $wert){
          
      $tempo .= $wert[6].' '.$wert[7].' '.$wert[8]."\r\n";
      }
      $datei_2 'zweiter.txt';
      $fp fopen($datei_2,'w');
      fwrite($fp,$tempo);
      fclose($fp);

      ?>
      Wenn ich die PHP-Datei nun aufrufe (auch schon beim ersten mal) erscheinen bei der zweiten Datei, also zweiter.txt die Datensätze doppelt.

      WIESO?

      Kommentar


      • #18
        Okay hat sich erledigt. Ich hab es selber gefunden.

        $temp -- > $ temp1 dann funktioniert es.

        Aber dafür ist mir noch eine andere Sache aufgefallen. Kann ich die CSV-Datei auch erst ab der 1 (bzw. 2) Zeile auslesen?

        Kommentar


        • #19
          Kann ich die CSV-Datei auch erst ab der 1 (bzw. 2) Zeile auslesen?
          Sicherlich geht das. Dann musst du allerdings auf die Vorzüge der foreach Schleife verzichten und das mittels while/for Schleife machen.

          Gruss

          tobi
          Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

          [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
          Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

          Kommentar


          • #20
            aha, nicht dass ich jetzt wüsste wie es funktioniert :-) , aber das hilft mir schon mal weiter. Bzw. ich lass das jetzt mal so, wie es ist und falls ich es doch noch ändern muss, bin ich sicher wieder hier :-)

            Tausend Dank für deine Hilfe Tobi!!!

            Lg aus Heidelberg

            Kommentar

            Lädt...
            X