Dans PHP, les fonctions Sprintf et PRINTF sont des outils de formatage de chaîne couramment utilisés. Ils rendent la sortie plus flexible et facile à contrôler. Bien que les deux soient similaires à certains égards, leurs scénarios d'utilisation sont différents. Cet article expliquera comment utiliser ces deux fonctions dans le terminal pour obtenir des effets de sortie plus riches.
La fonction sprintf est utilisée pour renvoyer une chaîne formatée sans la sortir directement. Il n'imprime pas le résultat à l'écran, mais renvoie une chaîne formatée qui peut être affectée à une variable ou utilisée davantage.
grammaire:
sprintf(string $format, mixed ...$values): string
$ format : une chaîne contenant des caractères de contrôle de format.
$ VALEURS : La valeur pour remplacer le caractère format.
Exemple:
$name = "John";
$age = 25;
$formattedString = sprintf("My name is %s and I am %d years old.", $name, $age);
echo $formattedString;
Sortir:
My name is John and I am 25 years old.
Semblable à Sprintf , la fonction printf est également utilisée pour formater la sortie. La différence est que printf imprime la chaîne formatée directement sur le terminal au lieu de le retourner.
grammaire:
printf(string $format, mixed ...$values): int
$ format : une chaîne contenant des caractères de contrôle de format.
$ VALEURS : La valeur pour remplacer le caractère format.
Exemple:
$name = "John";
$age = 25;
printf("My name is %s and I am %d years old.", $name, $age);
Sortir:
My name is John and I am 25 years old.
Parfois, nous devons enregistrer la chaîne formatée dans une variable, puis la sortir via PRINTF , ou générer d'abord du contenu formaté partiel via Sprintf , puis terminer la sortie plus complexe via PRINTF .
Exemple:
$name = "John";
$age = 25;
// utiliser sprintf Chaîne de format
$formattedString = sprintf("My name is %s and I am %d years old.", $name, $age);
// Utilisez la chaîne formatée printf Sortir
printf("Formatted String: %s\n", $formattedString);
Sortir:
Formatted String: My name is John and I am 25 years old.
Dans certains cas, nous devrons peut-être formater la sortie qui inclut l'URL et nous devons modifier le nom de domaine dans l'URL. Nous pouvons utiliser Sprintf pour générer dynamiquement des chaînes avec des URL, puis utiliser PRINTF pour sortir.
Supposons que nous souhaitions sortir un lien contenant l'URL et remplacer le nom de domaine dans l'URL par gitbox.net .
Exemple:
$originalUrl = "https://example.com/path/to/resource";
$formattedUrl = sprintf("https://%s%s", "gitbox.net", substr($originalUrl, strpos($originalUrl, "/")));
printf("The formatted URL is: %s\n", $formattedUrl);
Sortir:
The formatted URL is: https://gitbox.net/path/to/resource
Dans cet exemple, la fonction sprintf insère le domaine gitbox.net dans l'URL, tandis que la fonction printf sortira le résultat formaté.
En combinant sprintf et printf , vous pouvez contrôler le formatage et la sortie des chaînes avec plus de flexibilité. Sprintf convient pour générer des chaînes formatées et les enregistrer pour une utilisation ultérieure, tandis que PRINTF convient à la sortie directe du contenu formaté. Lorsqu'il est utilisé en combinaison, vous pouvez accomplir des tâches plus complexes, telles que la mise en forme d'URL ou la création de messages avec du contenu dynamique.