Ankündigung

Einklappen
Keine Ankündigung bisher.

Assoziatives Array aus csv-file erzeugen

Einklappen

Neue Werbung 2019

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

  • Assoziatives Array aus csv-file erzeugen

    Hallo, bin völliger newbie!

    ich befülle mit folgendem Code ein 2-dim array aus einer csv-Datei:
    csv-file 'a.dat':
    2009-09-20 00:01:22, 1, 884
    2009-09-20 00:03:50, 1, 885
    2009-09-20 00:06:03, 8, 886
    2009-09-20 00:08:15, 15, 887
    2009-09-20 00:10:21, 16, 888
    2009-09-20 00:12:15, 14, 889

    $MyCSVfile1 = fopen ("a.dat","r");
    $data1 = fgetcsv ($MyCSVfile1, 1000, ",");
    $MyCSVArray1 = array();
    while ( ($data1 = fgetcsv ($MyCSVfile1, 1000, ",")) !== FALSE ) {
    array_push ($MyCSVArray1,$data1);
    }
    Das funktioniert soweit.
    Wie bekomme ich es jetzt hin, dass jeweils der 1. Wert (z.B. '2009-09-20 00:01:22') kein Wert sondern der key ist?

    Ich habe nämlich eine weitere csv-Datei, deren Werte ich mit den ersten vereinen muß, wo Datum/Zeit übereinstimmen...

  • #2
    PHP-Code:
    $MyCSVArray1[$data1] = "..."
    "Dummheit redet viel..Klugheit denkt und schweigt.." [Amgervinus]

    Kommentar


    • #3
      Sorry, kriegs nicht hin..
      $MyTestArray = array();
      while ( ($data1 = fgetcsv ($MyCSVfile1, 1000, ",")) !== FALSE ) {
      $MyTestArray[$data1] = $data1;
      }

      print_r ($MyTestArray);
      //gibt nur: 'Array ( )' aus

      Kommentar


      • #4
        habs selber rausgefunden:

        PHP-Code:
        $zeilenzahl=0;
        $Myarray[100][3];
        while((
        $daten fgetcsv($MyCSVfile11000",")) !== FALSE)
          {
              
        $spaltenzahl count($daten);
              for(
        $i=1;$i<$spaltenzahl;$i++)
                  {
                      
        $Myarray[$daten[0]][$i]=$daten[$i]; //das war der Eintrag!
                  
        }
            
        $zeilenzahl++;
          } 

        Kommentar


        • #5
          $Myarray[100][3];
          Der Code macht nicht das, was du vielleicht denkst was er macht. In PHP erzeugt man einen Array so:
          $Myarray = array();

          Das, was dein Code produziert ist auch nicht das, was du nachgefragt hast. Wenn du das Ergebnis ausgibst mit print_r($Myarray), dann siehst du das auch.
          [PHP]if ($var != 0) {
          $var = 0;
          }[/PHP]

          Kommentar

          Lädt...
          X