HOWTO · PHP
Wie man in PHP eine Ganzzahl in eine Zeichenkette konvertiert
Dieser Artikel führt ein, wie man in PHP eine Ganzzahl in eine Zeichenkette konvertiert.
Auf dieser Seite
PHP bietet mehrere Möglichkeiten, eine Ganzzahl in eine Zeichenkette umzuwandeln. Am direktesten ist die explizite Umwandlung mit (string); die integrierte Funktion strval() erfüllt dieselbe Aufgabe. PHP wandelt eine Ganzzahl außerdem implizit um, überall dort, wo eine Zeichenkette erwartet wird — innerhalb einer Zeichenkette in doppelten Anführungszeichen oder wenn Sie Werte mit dem Verkettungsoperator verbinden. Interpolation und Verkettung benötigen daher keinen separaten Umwandlungsaufruf. Im Folgenden wird jede Methode gezeigt, gefolgt von Hinweisen dazu, welche zu bevorzugen ist.
Eine Ganzzahl mit dem Cast (string) in eine Zeichenkette umwandeln
Ein Cast gibt den Zieltyp direkt im Code an. Setzen Sie (string) vor ein Ganzzahl-Literal oder eine Variable mit einer Ganzzahl, und PHP liefert die Zeichenkettendarstellung, die Sie speichern oder überall dort übergeben können, wo ein String erforderlich ist.
Führen Sie dieses Beispiel aus:
Der Code und die angezeigten Bezeichnungen oder Ausgaben in diesem Abschnitt bleiben auf Englisch.
<?php
$variable = 10;
$string1 = (string)$variable;
echo "The variable is converted to a string and its value is $string1.\n";
?>
The variable is converted to a string and its value is 10.
Da der Cast explizit ist, bleibt die Absicht erkennbar und das Ergebnis ist wirklich ein string — prüfen Sie es mit gettype($string1) oder var_dump(). Dadurch ist (string) die idiomatische Wahl, wenn Sie einen echten Zeichenkettenwert benötigen und nicht nur eine ausgegebene Darstellung.
Eine Ganzzahl mit strval() in eine Zeichenkette umwandeln
strval() ist die in PHP integrierte Funktion zur Umwandlung eines Werts in eine Zeichenkette. Übergeben Sie die Variable als Parameter — strval($variable) — und die Funktion gibt ihre Zeichenkettendarstellung zurück; bei einer Ganzzahl sind dies dieselben Ziffern, die auch der Cast (string) erzeugt.
Der Code und die angezeigten Bezeichnungen oder Ausgaben in diesem Abschnitt bleiben auf Englisch.
<?php
$variable = 10;
$string1 = strval($variable);
echo "The variable is converted to a string and its value is $string1.\n";
?>
The variable is converted to a string and its value is 10.
strval() kann nicht auf ein Array oder ein Objekt angewendet werden. In diesem Fall gibt die Funktion den Typnamen des übergebenen Parameters zurück.Eine Ganzzahl durch Interpolation in doppelten Anführungszeichen in eine Zeichenkette umwandeln
PHP wertet Variablen aus, die in Strings mit doppelten Anführungszeichen eingebettet sind, und ersetzt sie durch ihre Werte — ein Merkmal, das als Variableninterpolation bezeichnet wird. Enthält die Variable eine Ganzzahl, wandelt PHP sie automatisch in eine Zeichenkette um, sodass keine explizite Umwandlung erforderlich ist.
Der Code und die angezeigten Bezeichnungen oder Ausgaben in diesem Abschnitt bleiben auf Englisch.
<?php
$variable = 10;
echo "The variable is converted to a string and its value is $variable.\n";
?>
The variable is converted to a string and its value is 10.
Die Interpolation funktioniert nur in Strings mit doppelten Anführungszeichen (und in Heredoc-Blöcken): '$variable' in einfachen Anführungszeichen ist wörtlicher Text und gibt $variable aus, nicht 10. Um den umgewandelten Wert zu behalten statt ihn nur auszugeben, weisen Sie den interpolierten String zu — $string1 = "$variable"; liefert dieselbe "10" wie der Cast.
Eine Ganzzahl durch Verkettung in eine Zeichenkette umwandeln
Der Operator . verbindet Strings, und die automatische Typumwandlung von PHP konvertiert einen Integer-Operanden für Sie; die Verkettung ist daher ebenfalls ein impliziter Umwandlungsweg. Der Artikel PHP-String-Verkettung behandelt den Operator ausführlicher.
Der Code und die angezeigten Bezeichnungen oder Ausgaben in diesem Abschnitt bleiben auf Englisch.
<?php
$variable = 10;
$string1 = "The variable is converted to a string and its value is ".$variable.".";
echo $string1."\n";
?>
The variable is converted to a string and its value is 10.
Wenn Sie nur die Umwandlung benötigen, verketten Sie die Ganzzahl auf einer der beiden Seiten mit "" — einer Zeichenkette ohne Zeichen. Sowohl "".$variable als auch $variable."" ergeben "10":
<?php
$variable = 10;
echo "".$variable."\n";
echo $variable.""."\n";
?>
10
10
Die passende Umwandlungsmethode auswählen
Verwenden Sie den Cast (string) oder strval(), wenn Sie einen tatsächlichen String-Wert benötigen — zum Speichern, zum Übergeben an eine Funktion oder API, die einen String erwartet, oder zur späteren Wiederverwendung. Beide machen die Umwandlung explizit; der Cast ist die idiomatische und minimal schnellere Form, während strval() sich natürlich liest, wenn Ihr Code ohnehin mit Funktionsaufrufen arbeitet. Verzichten Sie auf beide, wenn Sie die Ganzzahl nur in eine größere Ausgabe einbetten möchten: Interpolation und Verkettung mit . erzeugen den String bereits inline, sodass ein separater Umwandlungsschritt nichts hinzufügt. Beachten Sie die Grenzen — Interpolation erfordert Strings in doppelten Anführungszeichen, und strval() akzeptiert keine Arrays oder Objekte. Für formatierte Ergebnisse bietet eine Funktion wie sprintf("%d", $variable) die größte Kontrolle über den endgültigen Text.