Funkcija vsprintf
Funkcija vsprintf ir līdzīga sprintf, bet pieņem argumentus masīva veidā,
nevis mainīgu skaitu parametru. Pirmais parametrs ir formāta virknes-veidne ar
formāta specifikatoriem, otrais - vērtību masīvs aizvietošanai. Formāta virknē tiek izmantotas īpašas zīmes (formāta specifikatori), kas sākas ar zīmi % un kontrolē izvades formatēšanu.
Sintakse
vsprintf(string $format, array $args);
Formāta specifikatori
| Specifikators | Apraksts |
|---|---|
%s |
Virkne |
%d |
Zīmes vesels skaitlis (decimāls) |
%u |
Bez zīmes vesels skaitlis (decimāls) |
%f |
Peldoša punkta skaitlis (lokāli atkarīgs) |
%F |
Peldoša punkta skaitlis (nav lokāli atkarīgs) |
%c |
Rakstzīme pēc ASCII koda |
%x |
Vesels skaitlis heksadecimālajā sistēmā (mazie burti) |
%X |
Vesels skaitlis heksadecimālajā sistēmā (lielie burti) |
%o |
Vesels skaitlis oktālajā sistēmā |
%b |
Vesels skaitlis binārajā sistēmā |
%e |
Zinātniskais apzīmējums (mazie burti) |
%E |
Zinātniskais apzīmējums (lielie burti) |
%g |
Īss apzīmējums %e vai %f |
%G |
Īss apzīmējums %E vai %F |
%% |
Procentu zīme |
Piemērs
Pamata piemērs virknes formatēšanai ar vērtību aizvietošanu:
<?php
$res = vsprintf('Sveiki %s! Šodien ir %s.', ['Jāni', 'pirmdiena']);
echo $res;
?>
Koda izpildes rezultāts:
'Sveiki Jāni! Šodien ir pirmdiena.'
Piemērs
Dažādu formāta specifikatoru lietošana:
<?php
$res = vsprintf('%04d-%02d-%02d', [2023, 5, 12]);
echo $res;
?>
Koda izpildes rezultāts:
'2023-05-12'
Piemērs
Darbs ar peldoša punkta skaitļiem:
<?php
$res = vsprintf('Cena: $%.2f', [19.99]);
echo $res;
?>
Koda izpildes rezultāts:
'Cena: $19.99'