vfprintf funksiyası
vfprintf funksiyası spesifikatorlara uyğun formatlasdirilmis setri fayl axınına yazir. İlk parametr olaraq fayl resursunu, ikinci parametr olaraq format setrini, üçüncü parametr olaraq ise əvəzetme üçün arqumentler massivini qebul edir. Format setrinde xüsusi simvollar (format spesifikatorları) istifade olunur ki, bunlar % işaresi ile başlayır ve çıxışın formatlasdirilmesini idare edir.
Sintaksis
vfprintf(resource $handle, string $format, array $args): int
Format spesifikatorları
| Spesifikator | Açıqlama |
|---|---|
%s |
Setir |
%d |
İmzalı tam ədəd (onluq) |
%u |
İmzasız tam ədəd (onluq) |
%f |
Üzən nöqtəli ədəd (lokaldan asılı) |
%F |
Üzən nöqtəli ədəd (lokaldan asılı deyil) |
%c |
ASCII-koda görə simvol |
%x |
Tam ədəd on altılıq sistemde (kiçik hərflər) |
%X |
Tam ədəd on altılıq sistemde (böyük hərflər) |
%o |
Tam ədəd səkkizlik sistemde |
%b |
Tam ədəd ikilik sistemde |
%e |
Elmi qeyd (kiçik hərflər) |
%E |
Elmi qeyd (böyük hərflər) |
%g |
Qısa qeyd %e ve ya %f |
%G |
Qısa qeyd %E ve ya %F |
%% |
Faiz işaresi |
Nümunə
Formatlasdirilmis setrin fayla yazılması:
<?php
$file = fopen('output.txt', 'w');
$values = [10, 20.5, 'test'];
vfprintf($file, "Number: %d, Float: %.2f, String: %s", $values);
fclose($file);
?>
output.txt faylının terkibi:
'Number: 10, Float: 20.50, String: test'
Nümunə
Müxtəlif spesifikatorların istifadesi:
<?php
$res = fopen('php://output', 'w');
$data = [15, 12.3456, 'ABCDE'];
vfprintf($res, "Hex: %x, Scientific: %.2e, Padding: '%5s'", $data);
fclose($res);
?>
Çıxışın neticesi:
'Hex: f, Scientific: 1.23e+1, Padding: \' ABCDE\''