sprintf

(PHP 3, PHP 4 >= 4.0.0)

sprintf -- Vrßtit formßtovan² °et∞zec

Popis

string sprintf ( string format [, mixed args])

Vracφ °et∞zec vytvo°en² podle formßtovacφho °et∞zce format.

Formßtovacφ °et∞zec se sklßdß z nula nebo vφce direktiv: b∞╛n²ch znak∙ (krom∞ %), kterΘ se p°φmo kopφrujφ do v²sledku, a p°evodnφch specifikacφ, z nich╛ ka╛dß p°ijφmß jeden argument. Toto platφ pro sprintf() i printf().

Ka╛dß p°evodnφ specifikace se sklßdß ze znaku procenta (%), nßsledovanΘho jednφm nebo vφce z t∞chto znak∙, v tomto po°adφ:

  1. Voliteln² padding specifier, kter² urΦuje, jak² znak se pou╛ije na dopln∞nφ v²sledku na sprßvnou dΘlku °et∞zce. M∙╛e to b²t mezera nebo 0 (pφsmeno nula). Default je nula. Jin² dopl≥ujφcφ znak m∙╛ete zadat tak, ╛e p°ed n∞j p°ed°adφte jednoduchou uvozovku ('). Viz ukßzky nφ╛e.

  2. Voliteln² alignment specifier, kter² urΦuje, jestli se mß v²sledek zarovnat doleva nebo doprava. Default je doprava, pomlΦka (-) to zm∞nφ na doleva.

  3. VolitelnΘ Φφslo width specifier, kterΘ urΦuje, kolik znak∙ (minimßln∞) mß obsahovat v²sledek p°evodu.

  4. Voliteln² precision specifier, kter² urΦuje, kolik desetinn²ch mφst se mß zobrazit u Φφsel s desetinnou Φßrkou. Tento p°epφnaΦ nemß ╛ßdn² vliv na jinΘ typy ne╛ double. (Dal╣φ funkcφ u╛iteΦnou na formßtovßnφ Φφsel je number_format().)

  5. type specifier, kter² urΦuje, za jak² typ se majφ data argumentu pova╛ovat. Mo╛nΘ typy:

    % - a doslovn² znak procenta. Nevy╛aduje se ╛ßdn² argument.
    b - argument se pova╛uje za integer a je prezentovßn jako binßrnφ Φφslo.
    c - argument se pova╛uje za integer a je prezentovßn jako znak s touto ASCII hodnotou.
    d - argument se pova╛uje za integer a je prezentovßn jako desφtkovΘ Φφslo.
    f - argument se pova╛uje za double a je prezentovßn jako Φφslo s plovoucφ desetinou Φßrkou.
    o - argument se pova╛uje za integer a je prezentovßn jako oktalovΘ Φφslo.
    s - argument se pova╛uje za °et∞zec a je takto prezentovßn.
    x - the argument se pova╛uje za integer a je prezentovßn jako hexadecimßlnφ Φφslo (s mal²mi pφsmeny).
    X - argument se pova╛uje za integer a je prezentovßn jako hexadecimßlnφ Φφslo (s kapitßlkami).

Viz takΘ: printf(), sscanf(), fscanf() a number_format().

Ukßzky

P°φklad 1. Ukßzka sprintf(): zero-padded integers

$isodate = sprintf ("%04d-%02d-%02d", $year, $month, $day);

P°φklad 2. Ukßzka sprintf(): formatting currency

$money1 = 68.75;
$money2 = 54.35;
$money = $money1 + $money2;
// echo $money will output "123.1";
$formatted = sprintf ("%01.2f", $money);
// echo $formatted will output "123.10"