Rozdział 6. ♦ Ciągi znaków, data i czas 163
Znaczenie poszczególnych elementów jest następujące:
♦ % — znak rozpoczynający ciąg formatujący,
♦ wypełnienie — znak, który zostanie użyty jako wypełnienie,
♦ --znak określający, że ciąg wynikowy ma być wyrównywany do lewej
strony (domyślnie ciąg wyrównywany jest w prawo),
♦ długość — wartość określająca długość ciągu wynikowego,
♦ precyzja — wartość określająca liczbę miejsc po przecinku, o ile argument ma być traktowany jako wartość rzeczywista,
♦ kod — kod określający, w jaki sposób ma być traktowany argument. Możliwe do zastosowania kody zostały przedstawione w tabeli 6.2.
Tabela 6.2. Kody formatujące dla funkcji printf
Kod Znaczenie
* Znak procentów.
b Argument będzie traktowany jako typ całkowity (integer) i prezentowany jako liczba binarna.
c Argument będzie traktowany jako typ całkowity (integer) i prezentowany jako znak ASCII o danym kodzie.
d Argument będzie traktowany jako typ całkowity (integer) i prezentowany jako liczba dziesiętna.
u Argument będzie traktowany jako typ całkowity (integer) i prezentowany jako liczba dziesiętna bez znaku.
f Argument będzie traktowany jako typ rzeczywisty (float) i prezentowany jako liczba zmiennopozycyjna.
o Argument będzie traktowany jako typ całkowity (integer) i prezentowany jako liczba ósemkowa.
s Argument będzie traktowany jako typ łańcuchowy (string) i prezentowany jako ciąg znaków.
x Argument będzie traktowany jako typ całkowity (integer) i prezentowany jako liczba szesnastkowa, z małymi literami a - f.
X Argument będzie traktowany jako typ całkowity (i nteger) i prezentowany jako liczba szesnastkowa, z dużymi literami A - F.
Elementy ciągu formatującego ujęte w nawiasy kwadratowe są opcjonalne. Aby lepiej uzmysłowić sobie, jak działa funkcja printf, wykonajmy kilka przykładów. Na początek zobaczmy, w jaki sposób będzie interpretowana jedna wartość, kiedy będziemy ją wyświetlać przy użyciu różnych kodów formatujących. Przykładowy skrypt widoczny jest na listingu 6.6, a wynik jego działania na rysunku 6.5.
Listing 6.6. Wykorzystanie różnych ciągów formatujących dla tej samej wartości
<?php
Swartosc - 77:
printfCPrzy użyciu ciągu Ub = *b<br>". Swartosc): printfCPrzy użyciu ciągu %%c *= *c<br>". Swartosc): printfCPrzy użyciu ciągu Std = *d<br>". Swartosc):