sprintf () est une fonction de formatage de chaîne très pratique dans PHP. Il peut insérer des variables dans des modèles de format et les formater de manière spécifiée. Qu'il s'agisse de traiter des valeurs numériques, d'alignement décimal ou de générer une sortie de texte structurée, sprintf () est utile.
Cet article vous amènera à maîtriser rapidement l'utilisation de base, les paramètres de formatage et certaines compétences pratiques de sprintf () .
Sprintf () est une fonction de formatage de chaîne de PHP. Sa syntaxe de base est la suivante:
sprintf(string $format, mixed ...$values): string
Il formate les valeurs suivantes en fonction de l'espace réservé dans la chaîne de format $ et renvoie une chaîne formatée (pas de sortie directe).
$name = "Alice";
$age = 30;
echo sprintf("Mon nom est %s,Je suis cette année %d âge。", $name, $age);
Sortir:
Mon nom est Alice,Je suis cette année 30 âge。
Sprintf () utilise un contrôleur de format similaire à la langue C. Voici quelques symboles de format couramment utilisés:
Format des caractères | signification |
---|---|
% s | Chaîne |
%d | Entiers décimaux signés |
% u | Entiers décimaux non signés |
% f | Numéro de point flottant |
% x | Hexadécimal (minuscule) |
% X | Hexadécimal (Caps) |
% o | Octal |
%% | Sortir un pourcentage de signe |
echo sprintf("numéro de série:%04d", 42); // Sortir numéro de série:0042
Remarque: % 04D signifie qu'il y a 4 chiffres au total, et la pénurie est ajoutée au premier 0.
$price = 123.456;
echo sprintf("prix:%.2f Yuan", $price); // Sortir prix:123.46 Yuan
Description: .2 signifie que deux décimales seront conservées et seront arrondies.
$userId = 987;
$token = 'abc123';
$url = sprintf("https://gitbox.net/user/%d/profile?token=%s", $userId, $token);
echo $url;
Sortir:
https://gitbox.net/user/987/profile?token=abc123
echo sprintf("D'autre part:%2\$s Oui %1\$s", "professeur", "étudiant");
// Sortir:D'autre part:étudiant Oui professeur
Description: % 2 \ $ s signifie utiliser le deuxième paramètre, et % 1 \ $ s signifie en utilisant le premier paramètre.
sprintf () renvoie une chaîne, tandis que printf () est la sortie directe. La syntaxe des deux est presque la même:
$message = sprintf("Hello, %s!", "World");
echo $message;
// Équivalent à
printf("Hello, %s!", "World");
$level = "ERROR";
$message = "Impossible de se connecter à la base de données";
$log = sprintf("[%s] %s", $level, $message);
echo $log;
// Sortir:[ERROR] Impossible de se connecter à la base de données
printf("%-10s | %5s\n", "produit", "prix");
printf("%-10s | %5.2f\n", "pomme", 3.5);
printf("%-10s | %5.2f\n", "banane", 2.2);
Sortir:
produit | prix
pomme | 3.50
banane | 2.20
Description: % -10S signifie l'alignement gauche, représentant 10 caractères.
N'oubliez pas le personnage du format après % , car l'écriture manquée lancera une erreur.
Lorsque les paramètres de formatage multiple sont formatés, l'ordre doit correspondre à l'ordre au format à moins que le nombre ne soit utilisé.
Vous pouvez nist sprintf () pour générer un contenu de sortie plus complexe.
Sprintf () est un outil de formatage de chaîne puissant et flexible, le maîtrisant vous permet d'écrire un code PHP plus propre et maintenable. Qu'il s'agisse de traiter la sortie du texte, de structurer les URL ou l'affichage de données de formatage, sprintf () est un outil indispensable pour vous.
Utilisez-le dans le projet maintenant!