(PHP 5 >= 5.1.0, PHP 7, PHP 8)
SplFileObject::fscanf — Analysiert die Daten aus einer Datei entsprechend einem Format
Liest eine Zeile aus der Datei und interpretiert sie entsprechend dem
angegebenen format.
Beliebige Whitespace-Zeichen im format-String
entsprechen beliebigen Whitespace-Zeichen in der aus der Datei gelesenen
Zeile. Das heißt, dass auch ein Tabulator (\t) im
Formatstring einem einzelnen Leerzeichen im Input-Stream entsprechen kann.
format
Das interpretierte Format für string, wie es in
der Dokumentation zu sprintf() beschrieben ist, mit
den folgenden Unterschieden:
F, g, G und
b werden nicht unterstützt.
D steht für eine Dezimalzahl.
i steht für eine Ganzzahl mit Angabe der Basis.
n steht für die Anzahl der bisher verarbeiteten Zeichen.
s beendet das Lesen beim ersten Whitespace-Zeichen.
* anstelle von argnum$
unterdrückt die Zuweisung dieser Umwandlungsspezifikation.
varsWenn nur ein Parameter an diese Methode übergeben wird, werden die geparsten Werte als array zurückgegeben. Andernfalls, wenn optionale Parameter übergeben werden, gibt die Methode die Anzahl der zugewiesenen Werte zurück. Die optionalen Parameter müssen per Referenz übergeben werden.
Werden mehr Teilstrings in format erwartet, als in
der aus der Datei gelesenen Zeile verfügbar sind, wird null zurückgegeben.
Wenn optionale Parameter verwendet werden und das Ende der aus der Datei
gelesenen Zeile erreicht wird, bevor ein Wert geparst werden konnte, wird
-1 zurückgegeben.
Beispiel #1 Beispiel mit SplFileObject::fscanf()
<?php
$file = new SplFileObject("misc.txt");
while ($userinfo = $file->fscanf("%s %s %s")) {
list ($name, $profession, $countrycode) = $userinfo;
// Tue etwas mit $name $profession $countrycode
}
?>Inhalt der Datei users.txt
javier argonaut pe hiroshi sculptor jp robert slacker us luigi florist it