Funkcija vsprintf
Funkcija vsprintf analogna je sprintf, ali prihvata argumente u vidu niza,
a ne promenjivog broja parametara. Prvim parametrom se prosleđuje string-šablon sa
specifikatorima formata, drugim - niz vrednosti za zamenu. U stringu formata koriste se specijalni znaci (formati specifikatori), koji počinju sa znakom % i upravljaju formatiranjem ispisa.
Sintaksa
vsprintf(string $format, array $args);
Formati specifikatori
| Specifikator | Opis |
|---|---|
%s |
String |
%d |
Celobrojna vrednost sa znakom (decimalno) |
%u |
Celobrojna vrednost bez znaka (decimalno) |
%f |
Broj sa pokretnim zarezom (zavisno od lokalnih postavki) |
%F |
Broj sa pokretnim zarezom (nezavisno od lokalnih postavki) |
%c |
Znak prema ASCII-kodu |
%x |
Celobrojna vrednost u heksadecimalnom sistemu (mala slova) |
%X |
Celobrojna vrednost u heksadecimalnom sistemu (velika slova) |
%o |
Celobrojna vrednost u oktalnom sistemu |
%b |
Celobrojna vrednost u binarnom sistemu |
%e |
Naučna notacija (mala slova) |
%E |
Naučna notacija (velika slova) |
%g |
Kratak zapis %e ili %f |
%G |
Kratak zapis %E ili %F |
%% |
Znak procenta |
Primer
Osnovni primer formatiranja stringa sa zamenskim vrednostima:
<?php
$res = vsprintf('Hello %s! Today is %s.', ['John', 'Monday']);
echo $res;
?>
Rezultat izvršavanja koda:
'Hello John! Today is Monday.'
Primer
Upotreba različitih specifikatora formata:
<?php
$res = vsprintf('%04d-%02d-%02d', [2023, 5, 12]);
echo $res;
?>
Rezultat izvršavanja koda:
'2023-05-12'
Primer
Rad sa brojevima sa pokretnim zarezom:
<?php
$res = vsprintf('Price: $%.2f', [19.99]);
echo $res;
?>
Rezultat izvršavanja koda:
'Price: $19.99'