PHP sscanf()Funktionen
Beispiele
Eine Zeichenkette parsen:
$str = "age:30 weight:60kg";
sscanf($str,"age:%d weight:%dkg",$age,$weight);
// Typen und Werte anzeigen
var_dump($age,$weight);
?>
Beispiel ausführen »
Die Funktion sscanf() parst Eingaben aus einer Zeichenkette gemäß dem angegebenen Format. Die Funktion sscanf() parst eine Zeichenkette anhand der Formatzeichenkette in Variablen.
Wenn nur zwei Argumente an die Funktion übergeben werden, werden die Daten als Array zurückgegeben. Andernfalls, wenn zusätzliche Parameter übergeben werden, werden die geparsten Daten in diesen Parametern gespeichert. Wenn die Anzahl der Formatbezeichner größer als die Anzahl der Variablen ist, die sie aufnehmen, tritt ein Fehler auf. Wenn die Anzahl der Formatbezeichner jedoch kleiner als die Anzahl der Variablen ist, die sie aufnehmen, enthalten die überzähligen Variablen NULL.
Verwandte Funktionen:
- printf()- Gibt eine formatierte Zeichenkette aus
- sprintf()- Schreibt eine formatierte Zeichenkette in eine Variable
Syntax
| Parameters | Beschreibung |
|---|---|
| string | Erforderlich. Gibt die zu lesende Zeichenfolge an. |
| format | Erforderlich. Gibt das zu verwendende Format an. Mögliche Formatwerte:
Zusätzliche Formatwerte. Müssen zwischen % und dem Buchstaben platziert werden (z. B. %.2f):
Hinweis:Wenn mehrere der oben genannten Formatwerte verwendet werden, müssen sie in der oben angegebenen Reihenfolge verwendet werden und dürfen nicht neu angeordnet werden. |
| arg1 | Optional. Die erste Variable zum Speichern von Daten. |
| arg2 | Optional. Die zweite Variable zum Speichern von Daten. |
| arg++ | Optional. Die dritten, vierten Variablen zum Speichern von Daten. Und so weiter. |
Technische Details
| Rückgabewert: | Wenn nur zwei Argumente an die Funktion übergeben werden, werden die Daten als Array zurückgegeben. Andernfalls, wenn zusätzliche Parameter übergeben werden, werden die geparsten Daten in diesen Parametern gespeichert. Wenn die Anzahl der Formatbezeichner größer als die Anzahl der Variablen ist, die sie aufnehmen, tritt ein Fehler auf. Wenn die Anzahl der Formatbezeichner jedoch kleiner als die Anzahl der Variablen ist, die sie aufnehmen, enthalten die überzähligen Variablen NULL. |
|---|---|
| PHP-Version: | 4.0.1+ |
Weitere Beispiele
Beispiel 1
Verwenden Sie Formatwerte %s, %d und %c:
$str = "If you divide 4 by 2 you'll get 2";
$format = sscanf($str,"%s \n\t%s %s %d %s %d %s %s %c");
print_r($format);
?>
Beispiel ausführen »
PHP-String-Referenzhandbuch Weitere Erweiterungen