Funksjonen vsprintf

Funksjonen vsprintf er analog med sprintf, men tar argumenter i form av en matrise, og ikke et variabelt antall parametere. Den første parameteren er en strengmal med formatspecifikatorer, den andre er en matrise med verdier for innsetting. I formatstrengen brukes spesielle symboler (formatspecifikatorer) som starter med tegnet % og styrer formateringen av utdataene.

Syntaks

phpvsprintf(string $format, array $args);

Formatspecifikatorer

Specifikator Beskrivelse
%s Streng
%d Helttall med fortegn (desimalt)
%u Helttall uten fortegn (desimalt)
%f Flyttall (lokaleavhengig)
%F Flyttall (ikke lokaleavhengig)
%c Tegn etter ASCII-kode
%x Helttall i heksadesimalsystemet (små bokstaver)
%X Helttall i heksadesimalsystemet (store bokstaver)
%o Helttall i oktalsystemet
%b Helttall i binærsystemet
%e Vitenskapelig notasjon (små bokstaver)
%E Vitenskapelig notasjon (store bokstaver)
%g Kortform for %e eller %f
%G Kortform for %E eller %F
%% Prosenttegn

Eksempel

Grunnleggende eksempel på strengformatering med innsetting av verdier:

php<?php
  $res = vsprintf('Hello %s! Today is %s.', ['John', 'Monday']);
  echo $res;
?>

Resultat av kjøring av koden:

php'Hello John! Today is Monday.'

Eksempel

Bruk av forskjellige formatspecifikatorer:

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

Resultat av kjøring av koden:

php'2023-05-12'

Eksempel

Arbeid med flyttall:

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

Resultat av kjøring av koden:

php'Price: $19.99'

Se også

  • funksjonen sprintf,
    som formaterer en streng med et variabelt antall argumenter
  • funksjonen printf,
    som skriver ut en formatert streng