Ausgabeformatierte Zeichenfolge:
<?php$number = 9;$str = "Beijing";vprintf("Es gibt %u Millionen Fahrräder in %s.",array($number,$str));?>Die Funktion vprintf() gibt eine formatierte Zeichenfolge aus.
Im Gegensatz zu printf() befinden sich die Argumente in vprintf() in einem Array. Array-Elemente werden am Prozentzeichen (%) in die Hauptzeichenfolge eingefügt. Diese Funktion wird Schritt für Schritt ausgeführt. Beim ersten %-Zeichen wird das erste Array-Element eingefügt, beim zweiten %-Zeichen wird das zweite Array-Element eingefügt und so weiter.
Hinweis: Wenn mehr %-Symbole als arg-Parameter vorhanden sind, müssen Sie Platzhalter verwenden. Der Platzhalter wird nach dem %-Symbol eingefügt und besteht aus einer Zahl und „$“. Siehe Beispiel 2.
Tipp: Verwandte Funktionen: sprintf(), printf(), vsprintf(), fprintf() und vfprintf()
vprintf( format,argarray )
Parameter | beschreiben |
---|---|
Format | Erforderlich. Gibt eine Zeichenfolge und die Formatierung der darin enthaltenen Variablen an. Mögliche Formatwerte: %% – gibt ein Prozentzeichen % zurück %b – Binärzahl %c – das Zeichen, das dem ASCII-Wert entspricht %d – Dezimalzahl mit Vorzeichen (negativ, 0, positiv) %e – Verwenden Sie die wissenschaftliche Schreibweise in Kleinbuchstaben (z. B. 1.2e+2) %E – Verwenden Sie die wissenschaftliche Großschreibung (z. B. 1.2E+2) %u – Dezimalzahl ohne Vorzeichen (größer oder gleich 0) %f – Gleitkommazahl (lokale Einstellung) %F – Gleitkommazahl (nicht native Einstellung) %g – die kürzere Version von %e und %f %G – kürzeres %E und %f %o – Oktalzahl %s – Zeichenfolge %x – Hexadezimale Zahl (Kleinbuchstaben) %X – Hexadezimalzahl (Großbuchstaben) Zusätzliche Formatwerte. Muss zwischen % und einem Buchstaben stehen (z. B. %.2f): + (Fügen Sie + oder - vor einer Zahl hinzu, um das Vorzeichen der Zahl zu definieren. Standardmäßig werden nur negative Zahlen markiert, positive Zahlen werden nicht markiert.) ' (Gibt an, was als Auffüllung verwendet werden soll, standardmäßig Leerzeichen. Es muss mit einem Breitenbezeichner verwendet werden. Beispiel: %'x20s (verwenden Sie „x“ als Auffüllung)) - (Wert der linken Anpassungsvariable) [0-9] (gibt die Mindestbreite des Variablenwerts an) .[0-9] (gibt die Anzahl der Dezimalstellen oder die maximale Stringlänge an) Hinweis: Wenn mehrere der oben genannten Formatwerte verwendet werden, müssen diese in der oben genannten Reihenfolge verwendet werden und dürfen nicht unterbrochen werden. |
Argarray | Erforderlich. Ein Array mit Parametern, die an %-Symbolen in die Formatzeichenfolge eingefügt werden. |
Rückgabewert: | Gibt die Länge der Ausgabezeichenfolge zurück. |
---|---|
PHP-Version: | 4.1.0+ |
Verwenden Sie den Formatwert %f:
<?php$num1 = 123;$num2 = 456;vprintf("%f%f",array($num1,$num2));?>Platzhalter verwenden:
<?php$number = 123;vprintf("Mit 2 Dezimalstellen: %1$.2f<br>Ohne Dezimalstellen: %1$u",array($number));?>Verwenden Sie printf(), um alle möglichen Formatwerte zu demonstrieren:
<?php$num1 = 123456789;$num2 = -123456789;$char = 50; // Das ASCII-Zeichen 50 ist 2// Hinweis: Der Formatwert „%%“ gibt ein Prozentzeichen zurückprintf(“%%b = %b <br>",$num1); // Binärzahlprintf("%%c = %c <br>",$char); // Das ASCII Characterprintf("%%d = %d <br>",$num1); // Vorzeichenbehaftete Dezimalzahlprintf("%%d = %d <br>",$num2); // Vorzeichenbehaftete Dezimalzahlprintf("%%e = %e <br>",$num1); // Wissenschaftliche Notation (Kleinbuchstaben)printf("%%E = %E <br>",$num1); // Wissenschaftliche Notation (uppercase)printf("%%u = %u <br>",$num1); // Vorzeichenlose Dezimalzahl (positiv)printf("%%u = %u <br>",$num2); Dezimalzahl (negativ)printf("%%f = %f <br>",$num1); // Gleitkommazahl (lokale Einstellungen berücksichtigen)printf("%%F = %F <br>",$num1); // Gleitkommazahl (lokale Einstellungen nicht berücksichtigen)printf("%%g = %g <br>",$num1); // Kürzer von %e und %fprintf(" %%G = %G <br>",$num1); // Kürzer von %E und %fprintf("%%o = %o <br>",$num1); // Oktalzahlprintf("%%s = %s <br>",$num1); // Stringprintf("%%x = %x <br>",$num1); // Hexadezimale Zahl (Kleinbuchstaben)printf("%%X = %X <br >",$num1); // Hexadezimale Zahl (Großbuchstaben)printf("%%+d = %+d <br>",$num1); // Vorzeichenbezeichner (positiv)printf("%%+d = %+d <br>",$num2); // Vorzeichenspezifizierer (negativ)?>Demonstration von String-Spezifizierern:
<?php$str1 = "Hallo";$str2 = "Hallo Welt!";vprintf("[%s]<br>",array($str1));vprintf("[%8s]<br>",array($str1));vprintf("[%-8s] <br>",array($str1));vprintf("[%08s]<br>",array($str1)); vprintf("[%'*8s]<br>",array($str1));vprintf("[%8.8s]<br>",array($str2 ?>).