Funktionen fprintf
Funktionen fprintf formaterar en sträng enligt den angivna mallen och skriver resultatet till en filström. Den tar en filresurs som första parameter, en formatsträng som andra parameter, och efterföljande parametrar - värden för substitution i mallen. Om du skickar null istället för en filresurs, returnerar funktionen en sträng istället för att skriva till strömmen.
I formatsträngen används specialtecken (formatspecifikationer) som börjar med tecknet % och styr utdataformateringen.
Syntax
fprintf(resource $handle, string $format, mixed ...$values): int|false
Formatspecifikationer
| Specifikation | Beskrivning |
|---|---|
%s |
Sträng |
%d |
Heltal med tecken (decimal) |
%u |
Heltal utan tecken (decimal) |
%f |
Flyttal (lokalberoende) |
%F |
Flyttal (icke lokalberoende) |
%c |
Tecken enligt ASCII-kod |
%x |
Heltal i hexadecimalt system (gemener) |
%X |
Heltal i hexadecimalt system (versaler) |
%o |
Heltal i oktalt system |
%b |
Heltal i binärt system |
%e |
Vetenskaplig notation (gemener) |
%E |
Vetenskaplig notation (versaler) |
%g |
Kort notation %e eller %f |
%G |
Kort notation %E eller %F |
%% |
Procenttecken |
Exempel
Skrivning av en formaterad sträng till en fil:
<?php
$file = fopen('output.txt', 'w');
fprintf($file, "Namn: %s, Ålder: %d", "John", 25);
fclose($file);
?>
Innehåll i filen output.txt:
'Namn: John, Ålder: 25'
Exempel
Användning av olika formatspecifikationer:
<?php
$res = fopen('php://temp', 'w');
fprintf($res, "Flyttal: %.2f, Hex: %x", 12.3456, 255);
rewind($res);
echo stream_get_contents($res);
fclose($res);
?>
Resultat av kodkörning:
'Flyttal: 12.35, Hex: ff'
Exempel
Returnera en sträng istället för att skriva till fil:
<?php
$result = sprintf("Idag är det %s", date('Y-m-d'));
echo $result;
?>
Resultat av kodkörning:
'Idag är det 2023-11-15'
Se även
-
funktionen
sprintf,
som returnerar en formaterad sträng -
funktionen
vprintf,
som skriver ut en formaterad sträng -
funktionen
file_put_contents,
som skriver data till en fil