fgetcsv
fgetss
Filesystem
PHP Manual

# fgets

(PHP 4, PHP 5)

fgets — Liest eine Zeile von der Position des Dateizeigers

### Beschreibung

string fgets ( resource `$handle` [, int `$length` ] )

Gibt eine Zeile bis zu `length` -1 Bytes Länge zurück, welche aus der Datei von der aktuellen Position des Dateizeigers `handle` aus ausgelesen wird. Die Zeile endet an einem Zeilenumbruch (welcher im Rückgabewert enthalten ist), EOF (Ende der Datei) oder bei `length` - 1 Bytes (je nachdem, was eher auftritt). Ist keine Länge angegeben, wird diese auf 1k bzw. 1024 Bytes gesetzt.

Wenn ein Fehler auftritt, wird `FALSE` zurückgegeben.

Häufig auftretende Fehler:

Wenn Sie an die C-Semantik von fgets() gewöhnt sind, sollten Sie auf die unterschiedliche Behandlung von EOF (genauer: wie EOF zurückgegeben wird) achten.

Der Datei-Zeiger `fp` muss gültig sein, d.h. die Datei, auf die gezeigt wird, muss zuvor mit fopen(), popen(), oder fsockopen() geöffnet worden sein.

Ein einfaches Beispiel:

Beispiel #1 Eine Datei Zeile für Zeile einlesen

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

> Hinweis: Der Parameter `length` wurde in PHP 4.2.0 optional. Ist er nicht angegeben, wird als Zeilenlänge 1024 angenommen. Seit PHP 4.3 wird bei einem fehlenden Parameter `length` so lange gelesen, bis das Ende der Zeile erreicht ist. Ist der Großteil der Zeilen in der Datei größer als 8 kB, ist es effizienter, wenn Sie die maximale Zeilenlänge spezifizieren.

> Hinweis: Diese Funktion ist seit PHP 4.3 "binary safe", was aus frühere Versionen nicht zutrifft.

> Hinweis: Wenn Sie Probleme damit haben, dass PHP Zeilenendezeichen nicht erkennt, entweder beim Lesen von Dateien auf einem Macintosh oder bei Dateien die auf einem Macintosh erstellt wurden, können Sie die Option auto_detect_line_endings aktivieren.

Siehe auch fread(), fopen(), popen(), fgetc(), fsockopen() und socket_set_timeout().

fgetcsv
fgetss
Filesystem
PHP Manual