Du bist hier: Tips » Scripte » PHP
PHP
Referenzliste

sscanf

String-Funktionen

    Befehl:
mixed sscanf ( string $str , string $format [, mixed &$... ] )


    Parameter-Liste:
NameBeschreibung
strDer zu parsende Eingabestring.
formatDas interpretierte Format für str, wie es in der Dokumentation zu sprintf() beschrieben ist; folgende Unterschiede bestehen:

  • Die Funktion beachtet nicht Locale Einstellungen.
  • F, g, G und b sind nicht unterstützt.
  • D steht für eine Dezimal Ziffer.
  • i steht für Ganzzahlen mit Angabe der Basis.
  • n steht für die Anzahl der bisher prozessierten Zeichen.
...Optionale als Referenz übergebene Variablen, die die geparsten Werte enthalten.

    Rückgabewerte:
Werden nur 2 Parameter an die Funktion übergeben, werden die analysierten Werte als Array zurückgegeben. Andernfalls, wenn optionale Parameter übergeben wurden, gibt die Funktion die Anzahl der ermittelten Werte zurück. Die optionalen Parameter müssen als Referenz übergeben werden.

    Beschreibung:
Die Funktion sscanf() ist das Eingabegegenstück zu printf(). sscanf() liest den String str und interpretiert ihn entsprechend dem übergegebenen format-Parameter, der in der Dokumentation zu sprintf() näher beschrieben ist.

Beliebige Whitespaces im Formatstring entsprechen beliebigen Whitespaces im Inputstring. Das heisst, dass auch ein Tabulator \t im Formatstring einem einzelnen Leerzeichen des Inputstrings entsprechen kann.


    Aktiv in Version:
(PHP 4 >= 4.0.1, PHP 5, PHP 7)

    Siehe auch:
Interpretiert den Input einer Datei entsprechend einem angegebenen Format
 
Gibt einen formatierten String aus
 
Gibt einen formatierten String zurück
 

sscanf() - Beispiel:


Eingabe:
<?php
// Ermittlung der Serien-Nr.
list($serial) = sscanf("SN/2350001", "SN/%d");
// und des Herstellungsdatums
$mandate = "Januar 12 2013";
list($monat, $tag, $jahr) = sscanf($mandate, "%s %d %d");
echo "Das Teil $serial wurde hergestellt am: "
     . "$jahr-" . substr($monat, 0, 3) . "-$tag\n";
?>


Ausgabe:
Das Teil 2350001 wurde hergestellt am: 2013-Jan-12

Beschreibung:
Mit sscanf() kann man aus einem String (str) mittels der Formatierungsanweisung (format) Daten extrahieren. Die extrahierten Werte werden als Funktionsergebnis in Form eines Arrays zur�ckgegeben, es sei denn, dass eine ausreichende Anzahl Variablen (ab dem dritten Parameter) �bergegeben wurde. Ist dies der Fall, so werden die extrahierten Daten in diese Variablen eingetragen.
sscanf() - Beispiel 2:


Eingabe:
<?php
// Auslesen der Autoren-Info und Erzeugung eines DocBook-Eintrages
$auth = "24\tLewis Carroll";
$n = sscanf($auth, "%d\t%s %s", $id, $first, $last);
echo "<author id='$id'>
    <firstname>$first</firstname>
    <surname>$last</surname>
</author>\n";
?>


Ausgabe:
Lewis Carroll
String-Funktionen