Fonction vfprintf

La fonction vfprintf écrit une chaîne, formatée selon des spécificateurs, dans un flux de fichier. Elle prend comme premier paramètre une ressource de fichier, comme deuxième - une chaîne de format, et comme troisième - un tableau d'arguments pour la substitution. Dans la chaîne de format, des caractères spéciaux (spécificateurs de format) sont utilisés, qui commencent par le signe % et contrôlent le formatage de la sortie.

Syntaxe

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

Spécificateurs de format

Spécificateur Description
%s Chaîne
%d Nombre entier signé (décimal)
%u Nombre entier non signé (décimal)
%f Nombre à virgule flottante (dépendant de la locale)
%F Nombre à virgule flottante (non dépendant de la locale)
%c Caractère selon le code ASCII
%x Nombre entier en système hexadécimal (minuscules)
%X Nombre entier en système hexadécimal (majuscules)
%o Nombre entier en système octal
%b Nombre entier en système binaire
%e Notation scientifique (minuscules)
%E Notation scientifique (majuscules)
%g Format court %e ou %f
%G Format court %E ou %F
%% Signe pourcent

Exemple

Écriture d'une chaîne formatée dans un fichier :

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

Contenu du fichier output.txt :

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

Exemple

Utilisation de différents spécificateurs :

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

Résultat de la sortie :

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

Voir aussi

  • la fonction fprintf,
    qui formate une chaîne et l'écrit dans un flux
  • la fonction sprintf,
    qui retourne une chaîne formatée
  • la fonction vsprintf,
    qui fonctionne comme sprintf, mais accepte un tableau d'arguments