Aller au contenu

sprintf()

La fonction sprintf() de PHP formate une chaîne de caractères et la retourne. Elle est particulièrement utile pour créer des chaînes avec du contenu dynamique. Cet article couvre sa syntaxe, son utilisation et les spécificateurs de format courants.

Syntaxe

php
string sprintf ( string $format , mixed ...$args )

La fonction nécessite une chaîne $format obligatoire qui définit la structure de sortie. Le paramètre $args est variadique et optionnel ; il accepte zéro ou plusieurs valeurs pour remplacer les espaces réservés dans la chaîne de format. Notez que la syntaxe variadique (...$args) nécessite PHP 5.6 ou une version ultérieure.

Voici un exemple d'utilisation de la fonction sprintf() :

Exemple

php
<?php
$name = 'John';
$age = 25;
$str = sprintf('My name is %s and I am %d years old', $name, $age);
echo $str;
?>

Dans cet exemple, nous passons deux variables, $name et $age, pour remplacer les espaces réservés %s et %d dans la chaîne de format.

La sortie de ce code sera :


console
My name is John and I am 25 years old

Spécificateurs de Format Courants

La chaîne $format utilise des espaces réservés pour déterminer comment les arguments sont affichés :

  • %s – formate l'argument sous forme de chaîne.
  • %d – formate l'argument sous forme d'entier (supprime les décimales).
  • %f – formate l'argument sous forme de nombre à virgule flottante.
  • Remplissage et Précision – Vous pouvez contrôler la largeur et le nombre de décimales. Par exemple, %05d remplit un entier avec des zéros non significatifs jusqu'à une largeur de 5, et %.2f limite un nombre flottant à deux décimales.

En maîtrisant sprintf(), vous pouvez générer efficacement des chaînes structurées avec du contenu dynamique, rendant votre code PHP plus lisible et plus facile à maintenir.

Nous espérons que ce guide vous a aidé à comprendre comment utiliser sprintf() de manière efficace.

Pratique

Qu'est-ce qui est vrai concernant la fonction sprintf() en PHP ?

Trouvez-vous cela utile?

Aperçu dual-run — comparez avec les routes Symfony en production.