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

phpvsprintf(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<?php
  $res = vsprintf('Hello %s! Today is %s.', ['John', 'Monday']);
  echo $res;
?>

Rezultat izvršavanja koda:

php'Hello John! Today is Monday.'

Primer

Upotreba različitih specifikatora formata:

php<?php
  $res = vsprintf('%04d-%02d-%02d', [2023, 5, 12]);
  echo $res;
?>

Rezultat izvršavanja koda:

php'2023-05-12'

Primer

Rad sa brojevima sa pokretnim zarezom:

php<?php
  $res = vsprintf('Price: $%.2f', [19.99]);
  echo $res;
?>

Rezultat izvršavanja koda:

php'Price: $19.99'

Vidi takođe

  • funkciju sprintf,
    koja formatira string sa promenjivim brojem argumenata
  • funkciju printf,
    koja ispisuje formatiran string