vfprintf функциясы
vfprintf функциясы файл ағынына формат спецификаторларына сәйкес пішімделген жолды жазады. Бірінші параметр ретінде файл ресурсын, екіншісі - формат жолын, үшіншісі - ауыстыру үшін аргументтер массивін қабылдайды. Формат жолында % таңбасынан басталатын және шығыс пішімін басқаратын арнайы таңбалар (формат спецификаторлары) қолданылады.
Синтаксис
vfprintf(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
$file = fopen('output.txt', 'w');
$values = [10, 20.5, 'test'];
vfprintf($file, "Сан: %d, Ұтқыр нүкте: %.2f, Жол: %s", $values);
fclose($file);
?>
output.txt файлының мазмұны:
'Сан: 10, Ұтқыр нүкте: 20.50, Жол: test'
Мысал
Әр түрлі спецификаторларды қолдану:
<?php
$res = fopen('php://output', 'w');
$data = [15, 12.3456, 'ABCDE'];
vfprintf($res, "Он алтылық: %x, Ғылыми: %.2e, Толтыру: '%5s'", $data);
fclose($res);
?>
Шығыс нәтижесі:
'Он алтылық: f, Ғылыми: 1.23e+1, Толтыру: \' ABCDE\''