Kleines Problem beim Dateiauslesen

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

  • Kleines Problem beim Dateiauslesen

    Hallo Leute,

    also, da habe ich eine CSV Datei mit nur einer Spalte und in der sind lauter Einträge wie folgt z.B. autor gido man

    Blöderweise sind die Anfangsbuchstaben alle klein geschrieben, daher wollte ich die Datei mal schnell mit einem kleinen PHP Script so bearbeiten das die Wörter alle große Anfangsbuchstaben erhalten sollen.

    Die PHP Funktion dazu lautet ucwords, aber wenn ich das nachfolgende Script anwende, erhalte ich nur jeweils den ersten Anfangsbuchstaben der Wörter und den Rest nicht, warum?

    Script:
    PHP-Code:
    <?php
    $handle 
    fopen ("test.csv","r");

    while (!
    feof($handle)) {

    $buffer fgets($handle);

    $num count ($buffer);

    $buffer ucwords($buffer);

    for (
    $i=0$i<$num$i++)
    {
    echo 
    $buffer[$i]."<br>";
    }
    }
    fclose ($handle);
    ?>

  • #2
    hm dann kann irgendwas beim einlesen der datei nicht stimmen
    geb das dochmal aus

    Kommentar


    • #3
      wenn ich mich nicht irre liefert die funktion count() 1 zurück wenn du kein array sondern eine variable übergibst.

      wenn du die for-schleife weg lässt und einfach nur echo $buffer schreibts, dann sollte das funzen.

      gruss, jazzy

      Kommentar


      • #4
        rtfm: fgets

        Kommentar


        • #5
          @TobiaZ:
          Was hat denn das mit fgets() zu tun?
          so wie ich das sehe will er die datei zeile für zeile auslesen und ich geh mal davon aus das eine zeile nicht länger als 1024bytes ist.

          gruss, jazzy.

          Kommentar


          • #6
            Hallo jazzy_t,

            herzlichen Dank, es hat geklappt mit deinem Tip die for Schleife weg zu lassen, ich hatte das ganze Konstrukt eigentlich nur so aus dem PHP Manuel Nachschlagewerk übernommen.

            Tja, trotzdem hätte ich aber auch nichts dagegen, wenn mir jetzt der liebe TobiaZ noch sagt, wie auch die Variante mit der for Schleife funktionieren würde.

            Kommentar


            • #7
              och, das kann ich dir auch beantworten.

              ersetze die count()-funktion einfach durch strlen()-funktion, dann klappt das auch mit der for-schleife.

              notwendig ist die for-schleife aber nicht.

              gruss, jazzy

              Kommentar


              • #8
                Ok, vielen Dank für die liebe Hilfe nochmal euch beiden.

                Kommentar


                • #9
                  Das ist doch ein wenig sehr umständlich einen String Zeichen für Zeichen auf Großschrift zu setzen.
                  Dafür gibts doch strtoupper() http://php.speedbone.de/manual/en/fu...strtoupper.php

                  Kommentar


                  • #10
                    DSB, noch mal aufmerksam lesen:
                    [...] daher wollte ich die Datei mal schnell mit einem kleinen PHP Script so bearbeiten das die Wörter alle große Anfangsbuchstaben erhalten sollen.
                    dass es allerdings so sehr umständlich gelöst ist, kann ich nur bestätigen.

                    Kommentar


                    • #11
                      Ups, da habe ich aus Anfangsbuchstaben im Geiste wohl Buchstaben gemacht und tatsächlich falsch gelesen. *flööt*
                      Dann habe ich nichts gesagt.

                      Kommentar

                      Lädt...
                      X