In diesem Artikel wird hauptsächlich die Methode zur Verwendung der feof()-Funktion zum Lesen von Dateien in PHP vorgestellt, die korrekte und falsche Verwendung anhand von Beispielen verglichen und die Verwendungsfähigkeiten der feof()-Funktion erläutert beziehen Sie sich darauf
Das Beispiel in diesem Artikel beschreibt, wie PHP die Funktion feof() zum Lesen von Dateien verwendet. Teilen Sie es als Referenz mit allen. Die spezifische Verwendung ist wie folgt:
feof wird auf PHP 4 und PHP 5 angewendet
-wird verwendet, um zu testen, ob der Dateizeiger das Ende der Datei erreicht hat.
Wenn der Server die durch fsockopen() geöffnete Verbindung nicht schließt, wartet feof() bis zum Timeout und gibt TRUE zurück. Das Standard-Timeout-Limit beträgt 60 Sekunden. Dieser Wert kann mit stream_set_timeout() geändert werden.
Der Dateizeiger muss gültig sein und auf eine Datei zeigen, die erfolgreich von fopen() oder fsockopen() geöffnet (und noch nicht von fclose() geschlossen) wurde.
Sie können in einer Endlosschleife stecken bleiben, wenn der übergebene Dateizeiger ungültig ist, weil EOF nicht TRUE zurückgibt.
Beispiel #1 feof() mit ungültigem Dateizeiger Beispiel:
<?<span style="color: #000000">php </span><span style="color: #008000">//</span><span style="color: #008000"> 如果文件不可读取或者不存在,fopen 函数返回 FALSE</span> <span style="color: #800080">$file</span> = @<span style="color: #008080">fopen</span>("http://www.manongjc.com/article/1329.html", "r"<span style="color: #000000">); </span><span style="color: #008000">//</span><span style="color: #008000"> 来自 fopen 的 FALSE 会发出一条警告信息并在这里陷入无限循环. </span> <span style="color: #0000ff">while</span> (!<span style="color: #008080">feof</span>(<span style="color: #800080">$file</span><span style="color: #000000">)) { } </span><span style="color: #008080">fclose</span>(<span style="color: #800080">$file</span><span style="color: #000000">); </span>?>
Beispiel:
<?<span style="color: #000000">php </span><span style="color: #800080">$file</span> = <span style="color: #008080">fopen</span>(<span style="color: #800080">$_SERVER</span>['DOCUMENT_ROOT']."/me/test.txt", "r"<span style="color: #000000">); </span><span style="color: #008000">//</span><span style="color: #008000"> http://www.manongjc.com/article/1328.html //输出文本中所有的行,直到文件结束为止。 </span> <span style="color: #0000ff">while</span>(! <span style="color: #008080">feof</span>(<span style="color: #800080">$file</span><span style="color: #000000">)) { </span><span style="color: #0000ff">echo</span> <span style="color: #008080">fgets</span>(<span style="color: #800080">$file</span>). "<br />"<span style="color: #000000">; } </span><span style="color: #008080">fclose</span>(<span style="color: #800080">$file</span><span style="color: #000000">); </span>?>
Ausgabe:
Hallo, das ist eine Testdatei
Hier gibt es drei Zeilen
Dies ist die letzte Zeile.