Функция fprintf
Функция fprintf
форматирует строку согласно указанному шаблону и записывает результат в файловый поток. Первым параметром принимает файловый ресурс, вторым - строку формата, а последующие параметры - значения для подстановки в шаблон. Если передать null вместо файлового ресурса, функция вернёт строку вместо записи в поток.
В строке формата используются специальные символы (форматные спецификаторы), которые начинаются со знака %
и управляют форматированием вывода.
Синтаксис
fprintf(resource $handle, string $format, mixed ...$values): int|false
Форматные спецификаторы
Спецификатор | Описание |
---|---|
%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');
fprintf($file, "Name: %s, Age: %d", "John", 25);
fclose($file);
?>
Содержимое файла output.txt:
'Name: John, Age: 25'
Пример
Использование разных спецификаторов формата:
<?php
$res = fopen('php://temp', 'w');
fprintf($res, "Float: %.2f, Hex: %x", 12.3456, 255);
rewind($res);
echo stream_get_contents($res);
fclose($res);
?>
Результат выполнения кода:
'Float: 12.35, Hex: ff'
Пример
Возврат строки вместо записи в файл:
<?php
$result = sprintf("Today is %s", date('Y-m-d'));
echo $result;
?>
Результат выполнения кода:
'Today is 2023-11-15'
Смотрите также
-
функцию
sprintf
,
которая возвращает форматированную строку -
функцию
vprintf
,
которая выводит форматированную строку -
функцию
file_put_contents
,
которая записывает данные в файл