Fungsi vfprintf
Fungsi vfprintf menulis rentetan yang diformat mengikut penentu format kepada aliran fail. Parameter pertama menerima sumber fail, kedua - rentetan format, ketiga - tatasusunan argumen untuk penggantian. Dalam rentetan format, aksara khas (penentu format) digunakan, yang bermula dengan tanda % dan mengawal pemformatan output.
Sintaks
vfprintf(resource $handle, string $format, array $args): int
Penentu Format
| Penentu | 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 |
Penulisan pendek %e atau %f |
%G |
Penulisan pendek %E atau %F |
%% |
Tanda peratus |
Contoh
Menulis rentetan berformat ke fail:
<?php
$file = fopen('output.txt', 'w');
$values = [10, 20.5, 'test'];
vfprintf($file, "Number: %d, Float: %.2f, String: %s", $values);
fclose($file);
?>
Kandungan fail output.txt:
'Number: 10, Float: 20.50, String: test'
Contoh
Menggunakan penentu berbeza:
<?php
$res = fopen('php://output', 'w');
$data = [15, 12.3456, 'ABCDE'];
vfprintf($res, "Hex: %x, Scientific: %.2e, Padding: '%5s'", $data);
fclose($res);
?>
Keputusan output:
'Hex: f, Scientific: 1.23e+1, Padding: \' ABCDE\''