fgets liest nicht 1. Zeile

crsakawolf

Erfahrenes Mitglied
Hallo Leute,

ich habe ein Problem.
Ich hab eine Datei, die ich auslesen will komplett.
Leider liest fgets($handle) die aller erste zeile NICHT aus.

Vlt hab ich auch nur Tomaten auf den Augen ...

PHP:
 $fp = fopen($s_path.$s_file, "r");

 while($list = fgets($fp))
 {
     echo fgets($fp)."<br>";
 }

 fclose($fp);

Danke schoneinmal.
 
Bei jedem Aufruf von fgets wird eine Zeile gelesen, so auch bei dem Aufruf in deiner Bedingung. Deswegen:
PHP:
while ($list = fgets($fp)) {
    echo $list."<br>";
}
 
Du machst fgets in der while-Klausel. Anschliessend innerhalb der Schleife ein 2tes mal. Somit bist du da bereits auf Zeile 2.

entweder geht das
PHP:
 $fp = fopen($s_path.$s_file, "r");

 while($list = fgets($fp))
 {
     echo $list."<br>";
 }

 fclose($fp);

oder probier doch mal das Beispiel aus der PHP-Hilfedatei mit !feof

PHP:
$handle = fopen ("/tmp/inputfile.txt", "r");
while (!feof($handle)) {
    $buffer = fgets($handle, 4096);
    echo $buffer;
}
fclose ($handle);
 
Zurück