Fungsi fprintf
Fungsi fprintf memformat rentetan mengikut templat yang ditentukan dan menulis hasilnya ke aliran fail. Parameter pertama menerima sumber fail, parameter kedua - rentetan format, dan parameter berikutnya - nilai untuk digantikan ke dalam templat. Jika null diluluskan sebagai ganti sumber fail, fungsi akan mengembalikan rentetan dan bukannya menulis ke aliran.
Rentetan format menggunakan aksara khas (spesifikasi format) yang bermula dengan tanda % dan mengawal pemformatan output.
Sintaks
fprintf(resource $handle, string $format, mixed ...$values): int|false
Spesifikasi Format
| Spesifikasi | Keterangan |
|---|---|
%s |
Rentetan |
%d |
Integer bertanda (perpuluhan) |
%u |
Integer tanpa tanda (perpuluhan) |
%f |
Nombor titik terapung (bergantung pada lokal) |
%F |
Nombor titik terapung (tidak bergantung pada lokal) |
%c |
Aksara mengikut kod ASCII |
%x |
Integer dalam sistem perenambelasan (huruf kecil) |
%X |
Integer dalam sistem perenambelasan (huruf besar) |
%o |
Integer dalam sistem perlapanan |
%b |
Integer dalam sistem perduaan |
%e |
Notasi saintifik (huruf kecil) |
%E |
Notasi saintifik (huruf besar) |
%g |
Bentuk pendek %e atau %f |
%G |
Bentuk pendek %E atau %F |
%% |
Tanda peratus |
Contoh
Menulis rentetan terformat ke fail:
<?php
$file = fopen('output.txt', 'w');
fprintf($file, "Nama: %s, Umur: %d", "John", 25);
fclose($file);
?>
Kandungan fail output.txt:
'Nama: John, Umur: 25'
Contoh
Menggunakan spesifikasi format yang berbeza:
<?php
$res = fopen('php://temp', 'w');
fprintf($res, "Float: %.2f, Hex: %x", 12.3456, 255);
rewind($res);
echo stream_get_contents($res);
fclose($res);
?>
Hasil pelaksanaan kod:
'Float: 12.35, Hex: ff'
Contoh
Mengembalikan rentetan dan bukannya menulis ke fail:
<?php
$result = sprintf("Hari ini ialah %s", date('Y-m-d'));
echo $result;
?>
Hasil pelaksanaan kod:
'Hari ini ialah 2023-11-15'
Lihat juga
-
fungsi
sprintf,
yang mengembalikan rentetan terformat -
fungsi
vprintf,
yang mengoutput rentetan terformat -
fungsi
file_put_contents,
yang menulis data ke fail