Beschreibung:
string
sprintf
( string format [, mixed args])
Gibt
einen
an
Hand
des
Formatierungs-Strings
format
gebildeten
String
zurück
.
Der
Formatierungs-String
wird
aus
keiner
oder
mehreren
Anweisungen
gebildet
:
Gewöhnliche
Zeichen
(
ausser
%
)
,
die
direkt
in
das
Ergebnis
übertragen
werden
und
Umsetzungs-Anweisungen
.
Jede
dieser
Anweisungen
holt
sich
als
Resultat
ihre
eigenen
Parameter
.
Diese
Anweisungen
gelten
sowohl
für
die
sprintf(
)
-
als
auch
für
die
printf(
)
-Funktion
.
Jede
der
Formatierugs-Anweisungen
besteht
aus
einem
Prozent-Zeichen
(
%
)
,
gefolgt
von
einem
oder
mehrereren
der
folgenden
Elemente
:
-
Einem
optionalen
Füll-Zeichen
,
das
den
String
bis
rechts
auffüllt
.
Dies
kann
ein
Leerzeichen
oder
eine
0
(
das
Null-Zeichen
)
sein
.
Standardmäßig
wird
mit
dem
Leerzeichen
gefüllt
.
Andere
Füllzeichen
können
durch
Voranstellen
eines
einfachen
Anführungszeichens
(
'
)
definiert
werden
.
Beachten
Sie
die
nachstehenden
Beispiele
.
-
Einer
optionalen
Angabe
der
Ausrichtung
,
ob
die
Ausgabe
nach
links
oder
nach
rechts
(
default
)
ausgerichtet
werden
soll
.
Standardmäßig
ist
die
Ausrichtung
rechtsbündig
.
Um
den
Text
linksbündig
auszurichten
müssen
Sie
das
Zeichen
-
angeben
.
-
Einer
optionalen
Zahl
für
die
Längen-Angabe
,
welche
die
mindestens
zurückzugebende
Anzahl
Zeichen
spezifiziert
.
-
Einem
optionalen
Wert
für
die
Anzahl
der
auszugebenden
Dezimalstellen
für
Fließkommazahlen
.
Dieser
Wert
hat
nur
Einfluss
auf
Werte
vom
Typ
float
(
eine
weitere
hilfreiche
Funktion
zur
Formatierung
von
Zahlen
ist
number_format(
)
)
.
-
Einer
Typ-Angabe
welche
den
Typ
enthält
,
als
der
das
Argument
angesehen
werden
soll
.
Mögliche
Angaben
sind
:
%
-
ein
Prozent-Zeichen
(
"%"
)
.
Es
ist
kein
Argument
erforderlich
.
|
b
-
das
Argument
wird
als
Integer
angesehen
und
als
Binär-Wert
ausgegeben
.
|
c
-
das
Argument
wird
als
Integer
angesehen
und
das
entsprechende
ASCII-Zeichen
wird
ausgegeben
.
|
d
-
das
Argument
wird
als
Integer
angesehen
und
ein
Dezimalwert
(
signed
)
ausgegeben
.
|
u
-
das
Argument
wird
als
Integer
angesehen
und
ein
Dezimalwert
(
unsigned
)
ausgegeben
.
|
f
-
das
Argument
wird
als
float
angesehen
und
eine
Fließkomma-Zahl
ausgegeben
.
|
o
-
das
Argument
wird
als
Integer
angesehen
und
und
als
Oktalzahl
ausgegeben
.
|
s
-
das
Argument
wird
als
String
angesehen
und
auch
als
solcher
ausgegeben
.
|
x
-
das
Argument
wird
als
Integer
angesehen
und
als
Hexadezimal-Wert
ausgegeben
(
mit
Kleinbuchstaben
)
.
|
X
-
das
Argument
wird
als
Integer
angesehen
und
als
Hexadezimal-Wert
ausgegeben
(
mit
Großbuchstaben
)
.
|
Seit
PHP
4.0.6
unterstützt
der
Formatstring
auch
Argumente
zu
numerieren
/
tauschen
.
Hier
ein
Beispiel
:
Beispiel
1
.
Argumente
tauschen
|
Dies könnte "There are 5 monkeys in the tree" ausgeben. Aber
nehmen wir einmal an, dass wir den Formatstring in einer
separaten Datei erstellen, da wir ihn internationalisieren
wollen, und deshalb wie folgt umschreiben:
Beispiel
2
.
Argumente
tauschen
|
Nun haben wir ein Problem. Die Reihenfolge der Platzhalter des
Formatstrings entspricht nicht mehr der Reihenfolge der Argumente
im Code. Wir würden gerne den Code belassen wie er ist, und
einfach im Formatstring angeben, welchen Argumenten die
Platzhalter entsprechen. Wir würden dann den Formatstring wie
folt schreiben:
Beispiel
3
.
Argumente
tauschen
|
Ein weiterer Vorteil ist, dass wir nun die Platzhalter
wiederholen können, ohne mehr Argumente im Code hinzufügen zu
müssen. Zum Beispiel:
Beispiel
4
.
Argumente
tauschen
|
Siehe
auch
:
printf(
)
,
sscanf(
)
,
fscanf(
)
und
number_format(
)
.