Функсияи vfprintf

Функсияи vfprintf сатрро, ки мувофиқи мушаххаскунандаҳо формат шудааст, ба файли ҷараён менависад. Якумин параметр манбаи файлро, дуюмин - сатри форматро, сеюмин - массиви далелҳоро барои ивазкунӣ қабул мекунад. Дар сатри формат аломатҳои махсус (мушаххаскунандаҳои формате) истифода мешаванд, ки бо аломати % оғоз мешаванд ва формати хориҷиро идора мекунанд.

Синтаксис

phpvfprintf(resource $handle, string $format, array $args): int

Мушакҳаскунандаҳои формате

Мушакҳаскунанда Тавсиф
%s Сатр
%d Адади бутун бо аломат (даҳӣ)
%u Адади бутун бе аломат (даҳӣ)
%f Адади нуқтаи сипар (вобаста ба локал)
%F Адади нуқтаи сипар (вобаста ба локал нест)
%c Аломат бо коди ASCII
%x Адади бутун дар системаи шонздаҳӣ (ҳарфҳои хурд)
%X Адади бутун дар системаи шонздаҳӣ (ҳарфҳои калон)
%o Адади бутун дар системаи ҳаштӣ
%b Адади бутун дар системаи дуӣ
%e Навишти илмӣ (ҳарфҳои хурд)
%E Навишти илмӣ (ҳарфҳои калон)
%g Навишти кӯтоҳи %e ё %f
%G Навишти кӯтоҳи %E ё %F
%% Аломати фоиз

Намуна

Навиштани сатри форматшуда ба файл:

php<?php
  $file = fopen('output.txt', 'w');
  $values = [10, 20.5, 'test'];
  vfprintf($file, "Number: %d, Float: %.2f, String: %s", $values);
  fclose($file);
?>

Мундариҷаи файли output.txt:

php'Number: 10, Float: 20.50, String: test'

Намуна

Истифодаи мушакҳаскунандаҳои гуногун:

php<?php
  $res = fopen('php://output', 'w');
  $data = [15, 12.3456, 'ABCDE'];
  vfprintf($res, "Hex: %x, Scientific: %.2e, Padding: '%5s'", $data);
  fclose($res);
?>

Натиҷаи хориҷ:

php'Hex: f, Scientific: 1.23e+1, Padding: \' ABCDE\''

Ҳамчунин нигаред

  • функсияи fprintf,
    ки сатрро формат мекунад ва ба ҷараён менависад
  • функсияи sprintf,
    ки сатри форматшударо бармегардонад
  • функсияи vsprintf,
    ки ҳамчун sprintf кор мекунад, аммо массиви далелҳоро қабул мекунад