Función vfprintf

La función vfprintf escribe una cadena, formateada de acuerdo con los especificadores, en un flujo de archivo. El primer parámetro acepta un recurso de archivo, el segundo - una cadena de formato, el tercero - una matriz de argumentos para la sustitución. En la cadena de formato se utilizan caracteres especiales (especificadores de formato), que comienzan con el signo % y controlan el formato de la salida.

Sintaxis

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

Especificadores de formato

Especificador Descripción
%s Cadena
%d Número entero con signo (decimal)
%u Número entero sin signo (decimal)
%f Número de punto flotante (dependiente de la configuración regional)
%F Número de punto flotante (no dependiente de la configuración regional)
%c Carácter por código ASCII
%x Número entero en sistema hexadecimal (minúsculas)
%X Número entero en sistema hexadecimal (mayúsculas)
%o Número entero en sistema octal
%b Número entero en sistema binario
%e Notación científica (minúsculas)
%E Notación científica (mayúsculas)
%g Formato corto %e o %f
%G Formato corto %E o %F
%% Signo de porcentaje

Ejemplo

Escritura de una cadena formateada en un archivo:

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

Contenido del archivo output.txt:

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

Ejemplo

Uso de diferentes especificadores:

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

Resultado de la salida:

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

Véase también

  • la función fprintf,
    que formatea una cadena y la escribe en un flujo
  • la función sprintf,
    que devuelve una cadena formateada
  • la función vsprintf,
    que funciona como sprintf, pero acepta una matriz de argumentos