PHP
Referenzliste
fscanf
Dateisystem-Funktionen
Befehl:
mixed fscanf ( resource $handle , string $format [, string $var1 ] )
Parameter-Liste:
Beschreibung | |
---|---|
Eine Dateisystemressource (resource), wie sie in der Regel von fopen() zurückgegeben wird. | |
Das erwartete Format, wie es in der sprintf() Dokumentation beschrieben ist. | |
Optionale als Referenz übergebene Variablen, in welche die geparsten Werte geschrieben werden sollen. |
Rückgabewerte:
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.
Beschreibung:
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 heisst, dass auch ein Tabulator /t im Format String mit einem einzigen Leerzeichen im Input-Stream als übereinstimmend gelten kann.
Irgendwelche Whitespace-Zeichen (z.B. Leerzeichen, Tabulator, etc.) im Format String gelten mit irgendwelchen Whitespace-Zeichen des Input-Streams als übereinstimmend. Das heisst, dass auch ein Tabulator /t im Format String mit einem einzigen Leerzeichen im Input-Stream als übereinstimmend gelten kann.
Aktiv in Version:
(PHP 4 >= 4.0.1, PHP 5, PHP 7)
Hinweis:
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()
Liest Binärdaten aus einer Datei
• fgets()
Liest eine Zeile von der Position des Dateizeigers
• fgetss()
Liest eine Zeile von der Position des Dateizeigers und entfernt HTML Tags
• sscanf()
Überträgt einen String in ein angegebenes Format
• printf()
Gibt einen formatierten String aus
Gibt einen formatierten String zurück
fscanf() - Beispiel:
Eingabe:
<?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); ?> users.txt javier argonaut pe hiroshi sculptor jp robert slacker us luigi florist it
Beschreibung:
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. |
fscanf() - Beispiel 2:
Eingabe:
<?PHP //Inhalt der Datei member.txt: /*Damir Enseleit 1971 Karl Mustermann 1970 Petra Mustermann 1972*/ $fp = fopen ( 'member.txt', 'r' ); while ( $data = fscanf ( $fp, '%s %s %s' ) ) { list ( $vorname, $nachname, $jahr ) = $data; echo 'Vorname: ' . $vorname . '<br>'; echo 'Nachname: ' . $nachname . '<br>'; echo 'Jahrgang: ' . $jahr . '<br><br>'; } fclose ( $fp ); ?>
Ausgabe:
Vorname: Damir
Nachname: Enseleit
Jahrgang: 1971
Vorname: Karl
Nachname: Mustermann
Jahrgang: 1970
Vorname: Petra
Nachname: Mustermann
Jahrgang: 1972
Nachname: Enseleit
Jahrgang: 1971
Vorname: Karl
Nachname: Mustermann
Jahrgang: 1970
Vorname: Petra
Nachname: Mustermann
Jahrgang: 1972
Beschreibung:
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. |
Dateisystem-Funktionen