Fungsi vfprintf
Fungsi vfprintf menulis string yang diformat sesuai dengan spesifikasi ke aliran file. Parameter pertama menerima sumber daya file, kedua - string format, ketiga - array argumen untuk substitusi. Dalam string format digunakan karakter khusus (spesifikasi format), yang dimulai dengan tanda % dan mengontrol pemformatan output.
Sintaksis
vfprintf(resource $handle, string $format, array $args): int
Spesifikasi Format
| Spesifikasi | Deskripsi |
|---|---|
%s |
String |
%d |
Bilangan bulat bertanda (desimal) |
%u |
Bilangan bulat tak bertanda (desimal) |
%f |
Bilangan pecahan (tergantung lokal) |
%F |
Bilangan pecahan (tidak tergantung lokal) |
%c |
Karakter berdasarkan kode ASCII |
%x |
Bilangan bulat dalam sistem heksadesimal (huruf kecil) |
%X |
Bilangan bulat dalam sistem heksadesimal (huruf besar) |
%o |
Bilangan bulat dalam sistem oktal |
%b |
Bilangan bulat dalam sistem biner |
%e |
Notasi ilmiah (huruf kecil) |
%E |
Notasi ilmiah (huruf besar) |
%g |
Bentuk pendek %e atau %f |
%G |
Bentuk pendek %E atau %F |
%% |
Tanda persen |
Contoh
Menulis string terformat ke file:
<?php
$file = fopen('output.txt', 'w');
$values = [10, 20.5, 'test'];
vfprintf($file, "Number: %d, Float: %.2f, String: %s", $values);
fclose($file);
?>
Isi file output.txt:
'Number: 10, Float: 20.50, String: test'
Contoh
Penggunaan berbagai spesifikasi:
<?php
$res = fopen('php://output', 'w');
$data = [15, 12.3456, 'ABCDE'];
vfprintf($res, "Hex: %x, Scientific: %.2e, Padding: '%5s'", $data);
fclose($res);
?>
Hasil output:
'Hex: f, Scientific: 1.23e+1, Padding: \' ABCDE\''