(PHP 4 >= 4.0.1, PHP 5)
fscanf — Interpretiert den Input einer Datei entsprechend einem angegebenen Format
Die Funktion fscanf() ist ähnlich zu
sscanf(), wobei sie ihren Input aus
der mit handle
angegebenen Datei liest, und
entsprechend dem angegebenen format
interpretiert. Der format
Parameter is unter
der sprintf() Funktion näher dokumentiert.
Beliebige Whitespace-Zeichen (z.B. Leerzeichen, Tabulator, etc.) im Format String gelten mit beliebigen Whitespace-Zeichen des Input-Streams als übereinstimmend. Das heißt, dass auch ein Tabulator \t im Format String mit einem einzigen Leerzeichen im Input-Stream als übereinstimmend gelten kann.
Jeder fscanf() Aufruf liest eine Zeile aus der Datei aus.
Wenn nur zwei Parameter an die Funktion übergeben wurden, werden die geparseten Werte in einem Array zurückgegeben. Andernfalls gibt die Funktion die anzahl der zugewiesenen Werte zurück. Die optionalen Parameter müssen per Referenz übergeben werden.
Version | Beschreibung |
---|---|
4.3.0 | In früheren Versionen wurden maximal 512 Zeichen pro Aufruf eingelesen. Ab PHP 4.3.0 werden beliebig lange Zeile eingelesen und interpretiert. |
Beispiel #1 fscanf() Beispiel
<?php
$handle = fopen("users.txt", "r");
while ($userinfo = fscanf($handle, "%s\t%s\t%s\n")) {
list ($name, $profession, $countrycode) = $userinfo;
// Tue etwas mit den Werten ...
}
fclose($handle);
?>
Beispiel #2 Inhalt der users.txt Datei
javier argonaut pe hiroshi sculptor jp robert slacker us luigi florist it