vfprintf
funkcja
Jak fprintf, ale wartości przyjmuje jako tablicę zamiast listy argumentów. Zapisuje sformatowany ciąg do strumienia pliku.
vfprintf(resource $stream, string $format, array $values): int
vfprintf działa identycznie jak fprintf, z jedną różnicą: wartości do wstawienia w szablon przekazujesz jako tablicę, a nie jako kolejne argumenty funkcji. Dzięki temu możesz wygodnie formatować dane, które masz już zebrane w tablicy, bez rozpakowywania ich operatorem ....
Analogicznie vsprintf i vprintf to tablicowe wersje sprintf i printf.
<?php
declare(strict_types=1);
$pozycje = [
['Kawa', 12.5],
['Herbata', 8.0],
];
$sciezka = sys_get_temp_dir() . '/zamowienie.txt';
$plik = fopen($sciezka, 'w');
foreach ($pozycje as $wiersz) {
vfprintf($plik, "%-20s %6.2f PLN\n", $wiersz);
}
fclose($plik);
unlink($sciezka);
// zamowienie.txt:
// Kawa 12.50 PLN
// Herbata 8.00 PLN