Funktion fprintf
Die Funktion fprintf formatiert einen String gemäß der angegebenen Vorlage und schreibt das Ergebnis in einen Datei-Stream. Der erste Parameter akzeptiert eine Datei-Ressource, der zweite - eine Formatierungszeichenkette, und die weiteren Parameter - Werte zur Einsetzung in die Vorlage. Wenn null anstelle einer Datei-Ressource übergeben wird, gibt die Funktion einen String zurück, anstatt in den Stream zu schreiben.
In der Formatierungszeichenkette werden spezielle Symbole (Format-Spezifizierer) verwendet, die mit dem Zeichen % beginnen und die Formatierung der Ausgabe steuern.
Syntax
fprintf(resource $handle, string $format, mixed ...$values): int|false
Format-Spezifizierer
| Spezifizierer | Beschreibung |
|---|---|
%s |
String |
%d |
Ganzzahl mit Vorzeichen (dezimal) |
%u |
Ganzzahl ohne Vorzeichen (dezimal) |
%f |
Gleitkommazahl (lokalabhängig) |
%F |
Gleitkommazahl (nicht lokalabhängig) |
%c |
Zeichen entsprechend dem ASCII-Code |
%x |
Ganzzahl im Hexadezimalsystem (Kleinbuchstaben) |
%X |
Ganzzahl im Hexadezimalsystem (Großbuchstaben) |
%o |
Ganzzahl im Oktalsystem |
%b |
Ganzzahl im Binärsystem |
%e |
Wissenschaftliche Schreibweise (Kleinbuchstaben) |
%E |
Wissenschaftliche Schreibweise (Großbuchstaben) |
%g |
Kurzschreibweise %e oder %f |
%G |
Kurzschreibweise %E oder %F |
%% |
Prozentzeichen |
Beispiel
Schreiben eines formatierten Strings in eine Datei:
<?php
$file = fopen('output.txt', 'w');
fprintf($file, "Name: %s, Age: %d", "John", 25);
fclose($file);
?>
Inhalt der Datei output.txt:
'Name: John, Age: 25'
Beispiel
Verwendung verschiedener Format-Spezifizierer:
<?php
$res = fopen('php://temp', 'w');
fprintf($res, "Float: %.2f, Hex: %x", 12.3456, 255);
rewind($res);
echo stream_get_contents($res);
fclose($res);
?>
Ergebnis der Codeausführung:
'Float: 12.35, Hex: ff'
Beispiel
Rückgabe eines Strings anstatt Schreiben in eine Datei:
<?php
$result = sprintf("Today is %s", date('Y-m-d'));
echo $result;
?>
Ergebnis der Codeausführung:
'Today is 2023-11-15'
Siehe auch
-
die Funktion
sprintf,
die einen formatierten String zurückgibt -
die Funktion
vprintf,
die einen formatierten String ausgibt -
die Funktion
file_put_contents,
die Daten in eine Datei schreibt