Funkcija vfprintf
Funkcija vfprintf upisuje string, formatiran u skladu sa specifikatorima, u fajl tok. Prvi parametar prihvata resurs fajla, drugi - string formata, treći - niz argumenata za zamenu. U stringu formata koriste se specijalni simboli (formatni specifikatori), koji počinju znakom % i upravljaju formatiranjem ispisa.
Sintaksa
vfprintf(resource $handle, string $format, array $args): int
Formatni specifikatori
| Specifikator | Opis |
|---|---|
%s |
String |
%d |
Celobrojna vrednost sa znakom (decimalna) |
%u |
Celobrojna vrednost bez znaka (decimalna) |
%f |
Broj sa pokretnim zarezom (zavisno od lokalnih podešavanja) |
%F |
Broj sa pokretnim zarezom (nezavisno od lokalnih podešavanja) |
%c |
Karakter 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 |
Kratki zapis %e ili %f |
%G |
Kratki zapis %E ili %F |
%% |
Znak procenata |
Primer
Upis formatiranog stringa u fajl:
<?php
$file = fopen('output.txt', 'w');
$values = [10, 20.5, 'test'];
vfprintf($file, "Broj: %d, Decimalni: %.2f, String: %s", $values);
fclose($file);
?>
Sadržaj fajla output.txt:
'Broj: 10, Decimalni: 20.50, String: test'
Primer
Korišćenje različitih specifikatora:
<?php
$res = fopen('php://output', 'w');
$data = [15, 12.3456, 'ABCDE'];
vfprintf($res, "Hex: %x, Naučna notacija: %.2e, Poravnanje: '%5s'", $data);
fclose($res);
?>
Rezultat ispisa:
'Hex: f, Naučna notacija: 1.23e+1, Poravnanje: \' ABCDE\''