Fungsi vsprintf
Fungsi vsprintf mirip dengan sprintf, tetapi menerima argumen dalam bentuk array,
bukan sejumlah variabel parameter. Parameter pertama adalah string-pola dengan
spesifier format, yang kedua - array nilai untuk disubstitusikan. Dalam string format digunakan karakter khusus (spesifier format), yang dimulai dengan tanda % dan mengontrol pemformatan output.
Sintaks
vsprintf(string $format, array $args);
Spesifier Format
| Spesifier | Keterangan |
|---|---|
%s |
String |
%d |
Bilangan bulat bertanda (desimal) |
%u |
Bilangan bulat tanpa tanda (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
Contoh dasar pemformatan string dengan substitusi nilai:
<?php
$res = vsprintf('Hello %s! Today is %s.', ['John', 'Monday']);
echo $res;
?>
Hasil eksekusi kode:
'Hello John! Today is Monday.'
Contoh
Penggunaan berbagai spesifier format:
<?php
$res = vsprintf('%04d-%02d-%02d', [2023, 5, 12]);
echo $res;
?>
Hasil eksekusi kode:
'2023-05-12'
Contoh
Bekerja dengan bilangan pecahan:
<?php
$res = vsprintf('Price: $%.2f', [19.99]);
echo $res;
?>
Hasil eksekusi kode:
'Price: $19.99'