621 Stimmen

Umwandeln einer Ganzzahl in einen String in PHP

Gibt es einen Weg, um in PHP eine Ganzzahl in einen String umzuwandeln?

962voto

Chris Thompson Punkte 15343

Sie können die strval()-Funktion verwenden, um eine Zahl in einen String umzuwandeln.

Aus Wartungssicht ist offensichtlich, was Sie versuchen zu tun, im Gegensatz zu einigen anderen esoterischen Antworten. Natürlich hängt es von Ihrem Kontext ab.

$var = 5;

// Inline-Variablenauflösung
echo "Ich hätte gerne {$var} Waffeln"; // = Ich hätte gerne 5 Waffeln

// Zeichenkettenverkettung 
echo "Ich hätte gerne ".$var." Waffeln"; // Ich hätte gerne 5 Waffeln

// Die beiden oben genannten Beispiele haben den gleichen Endwert...
// ... Und das gilt auch für die beiden unten stehenden

// Expliziter Cast 
$items = (string)$var; // $items === "5";

// Funktionsaufruf
$items = strval($var); // $items === "5";

114voto

Sanjay Sheth Punkte 1409

Es gibt viele Möglichkeiten, dies zu tun.

Zwei Beispiele:

 $str = (string) $int;
 $str = "$int";     

Siehe das PHP-Handbuch zu Typumwandlung für mehr.

55voto

Sev Punkte 14803
$foo = 5;

$foo = $foo . "";

Jetzt ist $foo ein String.

Doch es ist ratsam, sich an das Umschalten zu gewöhnen. Da das Umschalten der richtige Weg ist, um so etwas zu erreichen:

$foo = 5;
$foo = (string)$foo;

Ein weiterer Weg ist, in Anführungszeichen zu setzen:

$foo = 5;
$foo = "$foo"

12voto

gewel Punkte 363

Verwendung:

$intValue = 1;
$string = sprintf('%d', $intValue);

Oder es könnte sein:

$string = (string)$intValue;

Oder:

settype($intValue, 'string');

12voto

Alan Storm Punkte 160579

Es gibt eine Reihe von Möglichkeiten, um eine Ganzzahl in PHP in einen String "umzuwandeln".

Der traditionelle Weg der Informatik wäre es, die Variable in einen String umzuwandeln:

$int = 5;
$int_als_string = (string) $int;
echo $int . ' ist ein '. gettype($int) . "\n";
echo $int_als_string . ' ist ein ' . gettype($int_als_string) . "\n";

Sie könnten auch von der impliziten Typumwandlung und der String-Interpolation in PHP profitieren:

$int = 5;
echo $int . ' ist ein '. gettype($int) . "\n";

$int_als_string = "$int";
echo $int_als_string . ' ist ein ' . gettype($int_als_string) . "\n";

$string_int = $int.'';
echo $int_als_string . ' ist ein ' . gettype($int_als_string) . "\n";

Schließlich könnte, ähnlich wie oben, eine Funktion, die einen String akzeptiert und zurückgibt, verwendet werden, um eine Ganzzahl umzuwandeln. Betrachten Sie das Folgende:

$int = 5;
echo $int . ' ist ein '. gettype($int) . "\n";

$int_als_string = trim($int);
echo $int_als_string . ' ist ein ' . gettype($int_als_string) . "\n";

Ich würde die letzte Option nicht empfehlen, aber ich habe schon Code gesehen, der sich auf dieses Verhalten verlassen hat, daher dachte ich, ich gebe es weiter.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X