Du bist hier: Tips » Scripte » PHP
PHP
Referenzliste

feof

Dateisystem-Funktionen

    Befehl:
bool feof ( resource $handle )


    Parameter-Liste:
NameBeschreibung
handleDer Zeiger auf eine Datei muss gültig sein und auf eine Datei verweisen, die vorher erfolgreich mit fopen() oder fsockopen() geöffnet (und nicht bereits von fclose() geschlossen) wurde.

    Rückgabewerte:
Gibt TRUE zurück, wenn der Dateizeiger an EOF (Dateiende) steht oder ein Fehler auftritt (inklusive Socket Zeitüberschreitung); ansonsten wird FALSE zurückgegeben.

    Beschreibung:
Mit eof() kann man überprüfen, ob der Dateizeiger am Ende der Datei (fp) steht. In diesem Fall, oder wenn ein Fehler aufgetreten ist, gibt diese Funktion true, sonst false zurück.

Beachten Sie bitte, dass es sich bei dem Dateizeiger fp um einen gültigen Zeiger auf eine offene Datei handeln muss.


    Aktiv in Version:
(PHP 4, PHP 5, PHP 7)

    Warnung:
Warnung:

Wenn eine mit fsockopen() geöffnete Verbindung nicht durch den Server geschlossen wurde, wird feof() hängen.

Wenn der übergebene Dateizeiger nicht gültig ist, können sie eine Endlosschleife erhalten, denn feof() gibt nicht TRUE zurück.


feof() - Beispiel: Zeitüberschreitungen mit feof() abhandeln


Eingabe:
<?php
function safe_feof($fp, &$start = NULL) {
 $start = microtime(true);

 return feof($fp);
}

/* Annahme: $fp wurde zuvor mit fsockopen() geöffnet */

$start = NULL;
$timeout = ini_get('default_socket_timeout');

while(!safe_feof($fp, $start) && (microtime(true) - $start) < $timeout)
{
 /* Abhandeln */
}
?>

feof() - Beispiel 2: mit einem ungültigen Dateizeiger


Eingabe:
<?php
// Wenn Datei nicht gelsen werden kann oder nicht existiert fopen gibt FALSE zurück
$file = @fopen("no_such_file", "r");

// FALSE von fopen wird eine Warnung  auslösen und hier in einer
// Endlosschleife resultieren
while (!feof($file)) {
}

fclose($file);
?>


Beschreibung:
Wenn der �bergebene Dateizeiger nicht g�ltig ist, k�nnen sie eine Endlosschleife erhalten, denn feof() gibt nicht TRUE zur�ck.
Dateisystem-Funktionen