PHP vfprintf()Funktion
Beispiele
Schreiben Sie einen Text in eine Textdatei mit dem Namen "test.txt":
$number = 9;
$str = "Beijing";
$file = fopen("test.txt","w");
echo vfprintf($file,"There are %u million bicycles in %s.",array($number,$str));
?>
Der obige Code gibt Folgendes aus:
Der folgende Text wird in die Datei "test.txt" geschrieben:
Definition und Verwendung
Die Funktion vfprintf() schreibt eine formatierte Zeichenfolge in den angegebenen Ausgabestream (z. B. Datei oder Datenbank).
Im Gegensatz zu fprintf() werden die Argumente in vfprintf() in einem Array platziert. Die Array-Elemente werden an den Prozentzeichen (%) in der 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 das zweite Array-Element und so weiter.
Hinweis:Wenn es mehr %-Zeichen als arg-Argumente gibt, müssen Sie Platzhalter verwenden. Der Platzhalter wird nach dem %-Zeichen eingefügt und besteht aus einer Zahl und "\$". Siehe Beispiel 2.
Tipp:Verwandte Funktionen:fprintf()、 printf()、 sprintf()、vprintf()undvsprintf()
Syntax
| Parameter | Beschreibung |
|---|---|
| stream | Erforderlich. Gibt an, wohin die Zeichenfolge geschrieben/ausgegeben wird. |
| format | Erforderlich. Gibt die Zeichenfolge an und wie die darin enthaltenen Variablen formatiert werden. Mögliche Formatwerte:
Zusätzliche Formatwerte. Müssen zwischen dem % und dem Buchstaben platziert werden (z. B. %.2f):
Hinweis:Wenn mehrere der oben genannten Formatwerte verwendet werden, müssen sie in der oben gezeigten Reihenfolge verwendet werden und dürfen nicht neu angeordnet werden. |
| argarray | Erforderlich. Ein Array mit Argumenten, die an den %-Zeichen in der Formatzeichenfolge eingefügt werden. |
Technische Details
| Rückgabewert: | Gibt die Länge der geschriebenen Zeichenfolge zurück. |
|---|---|
| PHP-Version: | 5+ |
Weitere Beispiele
Beispiel 1
Schreiben Sie etwas Text in eine Datei:
$num1 = 123;
$num2 = 456;
$file = fopen("test.txt","w");
vfprintf($file,"%f%f",array($num1,$num2));
?>
Der folgende Text wird in die Datei "test.txt" geschrieben:
Beispiel 2
Verwendung von Platzhaltern:
$number = 123;
$file = fopen("test.txt","w");
vfprintf($file,"Mit 2 Dezimalstellen: %1$.2f
nOhne Dezimalstellen: %1$u",array($number));
?>
Der folgende Text wird in die Datei "test.txt" geschrieben:
Ohne Dezimalstellen: 123
Beispiel 3
Verwenden Sie printf(), um alle möglichen Formatwerte zu demonstrieren:
$num1 = 123456789;
$num2 = -123456789;
$char = 50; // Das ASCII-Zeichen 50 ist 2
// Hinweis: Der Formatwert "%%" gibt ein Prozentzeichen zurück
printf("%%b = %b <br>",$num1); // Binärzahl
printf("%%c = %c <br>",$char); // Das ASCII-Zeichen
printf("%%d = %d <br>",$num1); // Dezimalzahl mit Vorzeichen
printf("%%d = %d <br>",$num2); // Dezimalzahl mit Vorzeichen
printf("%%e = %e <br>",$num1); // Wissenschaftliche Notation (Kleinbuchstaben)
printf("%%E = %E <br>",$num1); // Wissenschaftliche Notation (Großbuchstaben)
printf("%%u = %u <br>",$num1); // Vorzeichenlose Dezimalzahl (positiv)
printf("%%u = %u <br>",$num2); // Vorzeichenlose Dezimalzahl (negativ)
printf("%%f = %f <br>",$num1); // Gleitkommazahl (abhängig von lokalen Einstellungen)
printf("%%F = %F <br>",$num1); // Gleitkommazahl (nicht abhängig von lokalen Einstellungen)
printf("%%g = %g <br>",$num1); // Kürzere von %e und %f
printf("%%G = %G <br>",$num1); // Kürzere von %E und %f
printf("%%o = %o <br>",$num1); // Oktalzahl
printf("%%s = %s <br>",$num1); // Zeichenkette
printf("%%x = %x <br>",$num1); // Hexadezimale Zahl (Kleinbuchstaben)
printf("%%X = %X <br>",$num1); // Hexadezimale Zahl (Großbuchstaben)
printf("%%+d = %+d <br>",$num1); // Vorzeichen-Spezifizierer (positiv)
printf("%%+d = %+d <br>",$num2); // Vorzeichen-Spezifizierer (negativ)
?>
Beispiel ausführen »
PHP-String-Referenzhandbuch Andere Erweiterungen