9.06a Formázott kiiratás

Formázott kiírás

print() – Ugyanaz, mint az Echo, csak a szintaktika kissé más.

printf() – kiiratás formázottan

sprintf() – formázott sztringet ad vissza az alábbi szintaktika szerint:

string sprintf (string formátum [, mixed paraméterek...])

A formátum szerint megadott karaktersorozattal tér vissza. A formátumkarakterek lényegében a C-ben megszokott formátumkarakterek.

A formátumstring több direktívát tartalmazhat. A % string vezeti be a direktívákat, majd utána következnek a formázó karakterek. Ezeken kívül minden karakter megjelenik a kimeneten. A kimenet konverziós parancsait a printf() és az sprintf() parancsban ugyanúgy lehet használni.

A konverziós parancssorozat az alábbi parancsokat tartalmazza:

Opcionális kitöltő karakter. Ezzel lehet a stringet megfelelő méretre kitölteni. Default értéke a szóköz. Ezen kívül lehet a 0, vagy egyéb karakter.

Igazítás karakter. Az eredmény balra vagy jobbra igazított lesz. default jobbraigazítás; a – karakter igazítja balra. 

Szélesség meghatározó. Megmondja, hogy minimum hány karakter legyen az eredményben.

A tizedes jegyek száma. Csak a double formátum esetén hatásos. (A számformátumokat number_format() függvénnyel tudjuk még jól kezelni.)

A típusmeghatározó megmondja, hogy milyen típusú adatokat kell kezelnie. Lehetőségek:

% - a % jel.

b – az argmentum integer, és bináris számként jelenítjük meg

c – az argumentum integer, ASCII kódként jelenítjük meg.

d – az argumentum integer, decimális számként jelenítjük meg.

f - the argumentum double és lebegőpontos számként jelenítjük meg.

o - az argumentum integer, és oktális számként jelenítjük meg.

s – az argumentum string és így is jelenítjük meg.

x - az argumentum integer és hexadecimális számként jelenítjük meg (kisbetűvel)

X - az argumentum integer és hexadecimális számként jelenítjük meg (nagybetűvel)

$isodate = sprintf ("%04d-%02d-%02d", $ev, $ho, $nap);
$money1 = 68.75;
$money2 = 54.35;
$money = $money1 + $money2;              // Az echo $money kimenete "123.1" lesz
$formatted = sprintf ("%01.2f", $money); // Az echo $formatted kimenete "123.10"
echo $money; 
echo $formatted;