Trottel: Text-Datei als DB

moin

hab ne csv datei, bei der die einzelnen spalten durch [Tab]s getrennt sind.
gibts nun einigermaßen einfache methoden, womit ich die zellen-inhalte in nen array laden kann?

danke

  1. Hi!

    hab ne csv datei, bei der die einzelnen spalten durch [Tab]s getrennt sind.
    gibts nun einigermaßen einfache methoden, womit ich die zellen-inhalte in nen array laden kann?

    <?php
    $array = array();
    foreach( file( 'datei.csv') as $line) {
        $array[] = explode ( "\t", trim( $line));
    }
    ?>

    oder

    <?php
    $array = array();
    $handle = fopen ( 'datei.csv', 'r');
    while ($line = fgetcsv ( $handle, 1024, "\t")) {
       $array[] = $line;
    }
    fclose ($handle);
    ?>

    Wenn Du Dir über die Länge der Zeilen sicher sein kannst würde ich die fgetcsv-Methode verwenden, ist sicher schneller. Du solltest den Wert  für die Zeilenlänge so klein wie möglich wählen, aber dabei aufpassen dass Du nicht aus Versehen Zeilen abschneidest.

    Grüße
    Andreas

  2. Hiho,

    hat jetzt nichts genau mit deiner Frage zu tun, aber ist mir gerade so aufgefallen. Steht csv nicht für "comma seperated values"? Dann müssten doch streng genommen die einzelnen Spalten durch kommata gestrennt werden, wenn man die Datei als csv bezeichnen will, oder?

    Marc

    1. Hallo,

      hat jetzt nichts genau mit deiner Frage zu tun, aber ist mir gerade so aufgefallen. Steht csv nicht für "comma seperated values"? Dann müssten doch streng genommen die einzelnen Spalten durch kommata gestrennt werden, wenn man die Datei als csv bezeichnen will, oder?

      "CSV" ist der Oberbegriff fuer diese Art der Datenspeicherung.

      Welches Trennzeichen man verwendet, ist sekundaer.
      (Das Trennzeichen selbst darf natuerlich dann nicht
      innerhalb eines Eintrags vorkommen, bzw. es muss
      dort dann speziell "verschluesselt" werden, sogenanntes
      "Escapen").

      Manche Leute behaupten auch, es heisse eigentlich
      "Colon Separated Values".
      Mit "Colon" ist hier nicht der Dickdarm, sondern
      unser "Semikolon", Strichpunkt (";") gemeint...

      Gruesse,

      Thomas

      --
      Dank /my/ automatisch ausgeblendet: JavaScript, ASP.
      Manuell "ausgeblendet": Threads mit Frames, Iframes und Scrollbalken im Subject...
      Bitte keine Mails mit Fachfragen - dafuer gibt es das Forum!
      1. Sorry, kleiner Nachtrag:

        Mit "Colon" ist hier nicht der Dickdarm, sondern
        unser "Semikolon", Strichpunkt (";") gemeint...

        Sorry, hatte da etwas falsch im Kopf.

        Nach dem "Oxford Advanced Learner's Dictionary
        of Current English" ist "colon" der Doppelpunkt ":".
        Der Strichpunkt ";" heisst auch dort "semicolon".

        Gruesse,

        Thomas

        --
        Dank /my/ automatisch ausgeblendet: JavaScript, ASP.
        Manuell "ausgeblendet": Threads mit Frames, Iframes und Scrollbalken im Subject...
        Bitte keine Mails mit Fachfragen - dafuer gibt es das Forum!