PHP 8.4.22 Released!

SplFileObject::fscanf

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

SplFileObject::fscanfAnalysiert die Daten aus einer Datei entsprechend einem Format

Beschreibung

public function SplFileObject::fscanf(string $format, mixed &...$vars): array|int|null

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.

Parameter-Liste

format

Das interpretierte Format für string, wie es in der Dokumentation zu sprintf() beschrieben ist, mit den folgenden Unterschieden:

  • Die Funktion beachtet die Locale nicht.
  • 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.

vars
Die optional zugewiesenen Werte.

Rückgabewerte

Wenn 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.

Beispiele

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

Siehe auch

  • fscanf() - Interpretiert den Input einer Datei entsprechend einem angegebenen Format
  • sscanf() - Überträgt einen String in ein angegebenes Format
  • printf() - Liefert einen formatierten String
  • sprintf() - Gibt einen formatierten String zurück
add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top