Funkcija fprintf
Funkcija fprintf formatuoja eilutę pagal nurodytą šabloną ir įrašo rezultatą į failų srautą. Pirmu parametru priima failų resursą, antru - formato eilutę, o tolesni parametrai - reikšmes, kurias reikia įstatyti į šabloną. Jei perduosite null vietoj failų resurso, funkcija grąžins eilutę, o ne įrašys į srautą.
Formato eilutėje naudojami specialūs simboliai (formato specifikatoriai), kurie prasideda ženklu % ir valdo išvesties formatavimą.
Sintaksė
fprintf(resource $handle, string $format, mixed ...$values): int|false
Formato specifikatoriai
| Specifikatorius | Aprašas |
|---|---|
%s |
Eilutė |
%d |
Sveikasis skaičius su ženklu (dešimtainis) |
%u |
Sveikasis skaičius be ženklo (dešimtainis) |
%f |
Slankiojo kablelio skaičius (priklauso nuo lokalės) |
%F |
Slankiojo kablelio skaičius (nepriklauso nuo lokalės) |
%c |
Simbolis pagal ASCII kodą |
%x |
Sveikasis skaičius šešioliktainėje sistemoje (mažosios raidės) |
%X |
Sveikasis skaičius šešioliktainėje sistemoje (didžiosios raidės) |
%o |
Sveikasis skaičius aštuntainėje sistemoje |
%b |
Sveikasis skaičius dvejetainėje sistemoje |
%e |
Mokslinis žymėjimas (mažosios raidės) |
%E |
Mokslinis žymėjimas (didžiosios raidės) |
%g |
Trumpasis %e arba %f žymėjimas |
%G |
Trumpasis %E arba %F žymėjimas |
%% |
Procento ženklas |
Pavyzdys
Formatuotos eilutės įrašymas į failą:
<?php
$file = fopen('output.txt', 'w');
fprintf($file, "Vardas: %s, Amžius: %d", "John", 25);
fclose($file);
?>
Failo output.txt turinys:
'Vardas: John, Amžius: 25'
Pavyzdys
Įvairių formato specifikatorių naudojimas:
<?php
$res = fopen('php://temp', 'w');
fprintf($res, "Slankusis: %.2f, Šešioliktainis: %x", 12.3456, 255);
rewind($res);
echo stream_get_contents($res);
fclose($res);
?>
Kodo vykdymo rezultatas:
'Slankusis: 12.35, Šešioliktainis: ff'
Pavyzdys
Eilutės grąžinimas vietoj įrašymo į failą:
<?php
$result = sprintf("Šiandien yra %s", date('Y-m-d'));
echo $result;
?>
Kodo vykdymo rezultatas:
'Šiandien yra 2023-11-15'
Taip pat žiūrėkite
-
funkciją
sprintf,
kuri grąžina formatuotą eilutę -
funkciją
vprintf,
kuri išveda formatuotą eilutę -
funkciją
file_put_contents,
kuri įrašo duomenis į failą