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

phpsprintf(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<?php
  $res = sprintf("There are %d apples", 5);
  echo $res;
?>

Wynik wykonania kodu:

php'There are 5 apples'

Przykład

Formatowanie z wieloma podstawieniami:

php<?php
  $res = sprintf("%s has %d points", "John", 120);
  echo $res;
?>

Wynik wykonania kodu:

php'John has 120 points'

Przykład

Formatowanie liczb zmiennoprzecinkowych:

php<?php
  $res = sprintf("Price: $%.2f", 12.356);
  echo $res;
?>

Wynik wykonania kodu:

php'Price: $12.36'

Zobacz też

  • funkcję printf,
    która wypisuje sformatowany ciąg znaków
  • funkcję vsprintf,
    która działa podobnie, ale przyjmuje tablicę argumentów