Sprintf () ist eine sehr praktische Zeichenformatierungsfunktion in PHP. Es kann Variablen in Formatvorlagen einfügen und auf eine bestimmte Weise formatieren. Unabhängig davon, ob es sich um numerische Werte, Dezimalausrichtung oder die Erzeugung strukturierter Textausgabe handelt, ist Sprintf () nützlich.
Dieser Artikel führt Sie dazu, die grundlegende Nutzung, Formatierungsparameter und einige praktische Fähigkeiten von Sprintf () schnell zu beherrschen.
Sprintf () ist eine String -Formatierungsfunktion von PHP. Die grundlegende Syntax ist wie folgt:
sprintf(string $format, mixed ...$values): string
Es formatiert die folgenden Werte basierend auf dem Platzhalter in der $ -Format -Zeichenfolge und gibt eine formatierte Zeichenfolge zurück (keine direkte Ausgabe).
$name = "Alice";
$age = 30;
echo sprintf("Ich heiße %s,Ich bin dieses Jahr %d Alter。", $name, $age);
Ausgabe:
Ich heiße Alice,Ich bin dieses Jahr 30 Alter。
Sprintf () verwendet einen Format -Controller, der der C -Sprache ähnelt. Hier sind einige häufig verwendete Formatsymbole:
Formatzeichen | Bedeutung |
---|---|
%S | Saite |
%D | Signierte Dezimalzahlen |
%u | Unsignierte Dezimalzahlen |
%F | Schwimmende Punktzahl |
%X | Hexadezimal (Kleinbuchstaben) |
%X | Hexadezimal (Kappen) |
%O | Oktal |
%% | Ausgabe eines Prozentzeichens |
echo sprintf("Seriennummer:%04d", 42); // Ausgabe Seriennummer:0042
HINWEIS: %04D bedeutet, dass insgesamt 4 Ziffern vorhanden sind und der Mangel an den ersten 0 hinzugefügt wird.
$price = 123.456;
echo sprintf("Preis:%.2f Yuan", $price); // Ausgabe Preis:123.46 Yuan
Beschreibung: .2 bedeutet, dass zwei Dezimalstellen beibehalten und abgerundet werden.
$userId = 987;
$token = 'abc123';
$url = sprintf("https://gitbox.net/user/%d/profile?token=%s", $userId, $token);
echo $url;
Ausgabe:
https://gitbox.net/user/987/profile?token=abc123
echo sprintf("Auf der anderen Seite:%2\$s Ja %1\$s", "Lehrer", "Student");
// Ausgabe:Auf der anderen Seite:Student Ja Lehrer
Beschreibung: %2 \ $ S bedeutet, den zweiten Parameter zu verwenden, und %1 \ $ S bedeutet den ersten Parameter.
Sprintf () gibt eine Zeichenfolge zurück, während printf () die direkte Ausgabe ist. Die Syntax der beiden ist fast gleich:
$message = sprintf("Hello, %s!", "World");
echo $message;
// Äquivalent zu
printf("Hello, %s!", "World");
$level = "ERROR";
$message = "Es kann keine Verbindung zur Datenbank hergestellt werden";
$log = sprintf("[%s] %s", $level, $message);
echo $log;
// Ausgabe:[ERROR] Es kann keine Verbindung zur Datenbank hergestellt werden
printf("%-10s | %5s\n", "Produkt", "Preis");
printf("%-10s | %5.2f\n", "Apfel", 3.5);
printf("%-10s | %5.2f\n", "Banane", 2.2);
Ausgabe:
Produkt | Preis
Apfel | 3.50
Banane | 2.20
Beschreibung: %-10s bedeutet linksausrichtung und Berücksichtigung von 10 Zeichen.
Vergessen Sie nicht den Formatcharakter nach % , da das Schreiben von Fehlern einen Fehler macht.
Wenn mehrere Formatierungsparameter formatiert sind, muss die Reihenfolge mit der Reihenfolge in Format übereinstimmen, sofern die Nummer nicht verwendet wird.
Sie können Sprintf () nisten, um komplexere Ausgangsinhalte zu generieren.
Sprintf () ist ein leistungsstarkes und flexibles String -Formatierungswerkzeug, das es mit dem Mastering sauberer und pflegbares PHP -Code schreiben kann. Unabhängig davon, ob es sich um die Ausgabe von Textausgaben, die Strukturierung von URLs oder die Formatierung von Datenanzeigen handelt, ist Sprintf () ein unverzichtbares Werkzeug für Sie.
Verwenden Sie es jetzt im Projekt!