Fungsi vsprintf
Fungsi vsprintf adalah serupa dengan sprintf, tetapi menerima argumen dalam bentuk tatasusunan,
bukan bilangan parameter yang berubah-ubah. Parameter pertama ialah rentetan templat dengan
penentu format, yang kedua ialah tatasusunan nilai untuk penggantian. Dalam rentetan format, aksara khas (penentu format) digunakan, yang bermula dengan tanda % dan mengawal pemformatan output.
Sintaks
vsprintf(string $format, array $args);
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 |
Bentuk pendek %e atau %f |
%G |
Bentuk pendek %E atau %F |
%% |
Tanda peratus |
Contoh
Contoh asas pemformatan rentetan dengan penggantian nilai:
<?php
$res = vsprintf('Hello %s! Today is %s.', ['John', 'Monday']);
echo $res;
?>
Keputusan pelaksanaan kod:
'Hello John! Today is Monday.'
Contoh
Menggunakan penentu format yang berbeza:
<?php
$res = vsprintf('%04d-%02d-%02d', [2023, 5, 12]);
echo $res;
?>
Keputusan pelaksanaan kod:
'2023-05-12'
Contoh
Bekerja dengan nombor titik terapung:
<?php
$res = vsprintf('Price: $%.2f', [19.99]);
echo $res;
?>
Keputusan pelaksanaan kod:
'Price: $19.99'