PHP
Referenzliste
file
Dateisystem-Funktionen
Befehl:
array file ( string $filename [, int $flags = 0 [, resource $context ]] )
Parameter-Liste:
Beschreibung | |||||||||
---|---|---|---|---|---|---|---|---|---|
Pfad zur Datei. Tip: Mit dieser Funktion können Sie eine URL als Dateinamen verwenden, falls Sie fopen wrappers ermöglicht haben. Mehr Details dazu, wie Sie den Dateinamen angeben müssen finden Sie bei fopen(). Eine Liste der unterstützten URL Protokolle, die Fähigkeiten der verschiedenen Wrapper, Hinweise zu deren Verwendung und Informationen zu den eventuell vorhandenen vordefinierten Variablen finden Sie unter Unterstützte Protokolle and Wrappers. | |||||||||
Der optionale Parameter flags kann aus einer oder mehreren der folgenden Konstanten bestehen:
| |||||||||
Eine Context-Ressource, die mit der stream_context_create()-Funktion erstellt wurde. Hinweis: Die Kontext-Unterstützung gibt es seit PHP 5.0.0. Eine Beschreibung von Kontexten finden Sie unter Streams. |
Rückgabewerte:
Gibt die Datei in einem Array zurück. Jedes Element des Arrays entspricht einer Zeile in der Datei, ohne dass das Zeilenende entfernt wird. Im Fehlerfall gibt file()
FALSE
zurück.Hinweis:
Jede Zeile in dem resultierenden Array enthält das Zeilenende, ausser es wird
Jede Zeile in dem resultierenden Array enthält das Zeilenende, ausser es wird
FILE_IGNORE_NEW_LINES
verwendet; daher müssen Sie trim() verwenden, falls das Zeilenende nicht vorhanden sein soll.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.
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.
Beschreibung:
Mit file() kann man eine komplette Datei (filename) zeilenweise in ein Array einlesen. Das Zeilenumbruchzeichen am Ende jeder Zeile wird als letztes Zeichen in das entsprechende Array-Element übernommen.
Hinweis:
Sie können file_get_contents() benutzen, um den Inhalt einer Datei als String zurückgeliefert zu bekommen.
Sie können file_get_contents() benutzen, um den Inhalt einer Datei als String zurückgeliefert zu bekommen.
Aktiv in Version:
(PHP 4, PHP 5, PHP 7)
Tips:
Tips:
Mit dieser Funktion können Sie eine URL als Dateinamen verwenden, falls Sie fopen wrappers ermöglicht haben. Mehr Details dazu, wie Sie den Dateinamen angeben müssen finden Sie bei fopen(). Eine Liste der unterstützten URL Protokolle, die Fähigkeiten der verschiedenen Wrapper, Hinweise zu deren Verwendung und Informationen zu den eventuell vorhandenen vordefinierten Variablen finden Sie unter Unterstützte Protokolle and Wrappers.
Warnung:
Warnung:
Bei SSL-Verbindungen zusammen mit Microsoft IIS hält sich dieser Webserver nicht an das Protokoll und schliesst die Verbindung ohne ein close_notify zu senden. PHP quittiert dieses Fehlverhalten mit "SSL: Fatal Protocol Error", wenn das Ende der Daten erreicht ist. Eine mögliche Lösung besteht darin, den Level von error_reporting herabzusetzten und Warnings auszuschliessen. Ab PHP 4.3.7 kann PHP fehlerhafte IIS-Serversoftware erkennen, wenn Sie einen Stream mit dem https://-Wrapper öffnen, und unterdrückt die Warnung für Sie. Falls Sie fsockopen() benutzen, um einen ssl://-Socket zu öffnen, müssen Sie selbst dafür Sorge tragen, die Warnung zu erkennen und diese zu unterdrücken.
Siehe auch:
file() - Beispiel 1:
Eingabe:
<?php // Liest eine Datei in ein Array. Hier gehen wir über HTTP, um den // HTML-Quelltext einer URL zu bekommen $lines = file('http://www.example.com/'); // Durchgehen des Arrays und Anzeigen des HTML-Quelltexts inkl. Zeilennummern foreach ($lines as $line_num => $line) { echo "Line #<b>{$line_num}</b> : " . htmlspecialchars($line) . "<br>\n"; } // Ein weiteres Beispiel: Einlesen einer Webseite in einen String. // Siehe auch file_get_contents(). $html = implode ('', file ('http://www.example.com/')); // Benutzung des optionalen flags-Parameters seit PHP 5 $trimmed = file('somefile.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); ?>
Beschreibung:
Bei SSL-Verbindungen zusammen mit Microsoft IIS h�lt sich dieser Webserver nicht an das Protokoll und schliesst die Verbindung ohne ein close_notify zu senden. PHP quittiert dieses Fehlverhalten mit "SSL: Fatal Protocol Error", wenn das Ende der Daten erreicht ist. Eine m�gliche L�sung besteht darin, den Level von error_reporting herabzusetzten und Warnings auszuschliessen. Ab PHP 4.3.7 kann PHP fehlerhafte IIS-Serversoftware erkennen, wenn Sie einen Stream mit dem https://-Wrapper �ffnen, und unterdr�ckt die Warnung f�r Sie. Falls Sie fsockopen() benutzen, um einen ssl://-Socket zu �ffnen, m�ssen Sie selbst daf�r Sorge tragen, die Warnung zu erkennen und diese zu unterdr�cken.
Beschreibung:
Beschreibung | |
---|---|
5.0.0 | Der context -Parameter wurde hinzugefügt. |
5.0.0 | Vor PHP 5.0.0 das Flags Parameter nur unter include_path und wurde mit 1 aktiviert |
4.3.0 | file() wurde binär-sicher. |
file() - Beispiel 2:
Eingabe:
<?PHP $datei = 'statistik.csv'; $array = file ( $datei ); for ( $x = 0; $x < count ( $array ); $x++ ) { echo $array[$x] . '<br>'; } ?>
Ausgabe:
01.08.2001#45.234.22.20#www.wasserfest.ch
02.08.2001#32.142.34.25#www.jumina.ru
02.08.2001#http://www.nirwana.hu#56.49.152.56
03.08.2001#http://www.ansicht.at#212.115.431.44
02.08.2001#32.142.34.25#www.jumina.ru
02.08.2001#http://www.nirwana.hu#56.49.152.56
03.08.2001#http://www.ansicht.at#212.115.431.44
Beschreibung:
Beschreibung | |
---|---|
5.0.0 | Der context -Parameter wurde hinzugefügt. |
5.0.0 | Vor PHP 5.0.0 das Flags Parameter nur unter include_path und wurde mit 1 aktiviert |
4.3.0 | file() wurde binär-sicher. |
Dateisystem-Funktionen