Funkcja sprintf
Funkcja sprintf formatuje ciąg znaków zgodnie z podanym szablonem i zwraca wynik. Jako pierwszy parametr przyjmuje ciąg formatujący, kolejne parametry to wartości do podstawienia. W ciągu formatującym używane są specjalne symbole (specyfikatory formatujące), które zaczynają się od znaku % i sterują formatowaniem wyjścia.
Składnia
sprintf(format, arg1, arg2, ...);
Specyfikatory formatujące
| Specyfikator | Opis |
|---|---|
%s |
Ciąg znaków |
%d |
Liczba całkowita ze znakiem (dziesiętna) |
%u |
Liczba całkowita bez znaku (dziesiętna) |
%f |
Liczba zmiennoprzecinkowa (zależna od ustawień regionalnych) |
%F |
Liczba zmiennoprzecinkowa (niezależna od ustawień regionalnych) |
%c |
Znak według kodu ASCII |
%x |
Liczba całkowita w systemie szesnastkowym (małe litery) |
%X |
Liczba całkowita w systemie szesnastkowym (wielkie litery) |
%o |
Liczba całkowita w systemie ósemkowym |
%b |
Liczba całkowita w systemie dwójkowym |
%e |
Notacja naukowa (małe litery) |
%E |
Notacja naukowa (wielkie litery) |
%g |
Krótki zapis %e lub %f |
%G |
Krótki zapis %E lub %F |
%% |
Znak procentu |
Przykład
Formatowanie ciągu znaków z podstawieniem liczby całkowitej:
<?php
$res = sprintf("There are %d apples", 5);
echo $res;
?>
Wynik wykonania kodu:
'There are 5 apples'
Przykład
Formatowanie z wieloma podstawieniami:
<?php
$res = sprintf("%s has %d points", "John", 120);
echo $res;
?>
Wynik wykonania kodu:
'John has 120 points'
Przykład
Formatowanie liczb zmiennoprzecinkowych:
<?php
$res = sprintf("Price: $%.2f", 12.356);
echo $res;
?>
Wynik wykonania kodu:
'Price: $12.36'