Function.fscanf
Aus PHP-Wiki
fscanf — Interpretiert den Input einer Datei entsprechend einem angegebenen Format
Beschreibung
Beschreibung
mixed fscanf ( resource $handle , string $format [, string $var1 ] )
Die Funktion fscanf() ist
sscanf() ähnlich, wobei sie ihren Input aus
der mit handle
angegebenen Datei nimmt, und
entsprechend dem angegebenen format
interpretiert. Sind nur 2 Parameter angegeben, werden die analysierten
Werte als Array zurückgegeben. Werden auch optionale Parameter
übergeben, gibt die Funktion die Anzahl der ermittelten Werte zurück.
Die optionalen Parameter müssen referenziert übergeben werden.
Irgendwelche Whitespace-Zeichen (z.B. Leerzeichen, Tabulator, etc.)
im Format String gelten mit irgendwelchen 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.
Beispiel #1 fscanf()
<?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 users.txt
javier argonaut pe
hiroshi sculptor jp
robert slacker us
luigi florist it
Hinweis:
Vor PHP 4.3.0 war die maximale Anzahl der von der Datei eingelesenen
Zeichen 512 (oder bis zu dem ersten \n, was zuerst eintrat).
Seit PHP 4.3.0 werden beliebig lange Zeilen gelesen und interprtiert.
Siehe auch fread(), fgets(),
fgetss(), sscanf(),
printf(), und sprintf().