PHPで整数を文字列に変換する方法はありますか?
strval()
変更しません $variable
。
PHPで整数を文字列に変換する方法はありますか?
strval()
変更しません $variable
。
回答:
このstrval()
関数を使用して、数値を文字列に変換できます。
保守の観点からは、他の難解な答えのいくつかではなく、何をしようとしているのかが明らかです。もちろん、それはあなたのコンテキストに依存します。
$var = 5;
// Inline variable parsing
echo "I'd like {$var} waffles"; // = "I'd like 5 waffles
// String concatenation
echo "I'd like ".$var." waffles"; // I'd like 5 waffles
// Explicit cast
$items = (string)$var; // $items === "5";
// Function call
$items = strval($var); // $items === "5";
strval(0.999999997)
ます1
。
これを行うには多くの方法があります。
2つの例:
$str = (string) $int;
$str = "$int";
詳細については、タイプジャグリングに関するPHPマニュアルを参照してください。
0
は""
悪くないかもしれません。それは本当にアプリケーションに依存します。そうは言っても、あなたは良いことを言っています。
$foo = 5;
$foo = $foo . "";
今$foo
は文字列です。
ただし、キャストに慣れることをお勧めします。キャストはそのようなことを達成するための適切な方法なので、
$foo = 5;
$foo = (string)$foo;
別の方法は引用符でカプセル化することです:
$foo = 5;
$foo = "$foo"
PHPで整数を文字列に「変換」する方法はいくつかあります。
従来のコンピュータサイエンスの方法は、変数を文字列としてキャストすることです。
$int = 5;
$int_as_string = (string) $int;
echo $int . ' is a '. gettype($int) . "\n";
echo $int_as_string . ' is a ' . gettype($int_as_string) . "\n";
PHPの暗黙の型変換と文字列補間を利用することもできます。
$int = 5;
echo $int . ' is a '. gettype($int) . "\n";
$int_as_string = "$int";
echo $int_as_string . ' is a ' . gettype($int_as_string) . "\n";
$string_int = $int.'';
echo $int_as_string . ' is a ' . gettype($int_as_string) . "\n";
最後に、上記と同様に、文字列を受け入れて返す関数は、整数の変換に使用できます。以下を検討してください。
$int = 5;
echo $int . ' is a '. gettype($int) . "\n";
$int_as_string = trim($int);
echo $int_as_string . ' is a ' . gettype($int_as_string) . "\n";
私は最後のオプションはお勧めしませんが、この動作に依存するコードを実際に見かけたので、そのまま渡すと思いました。
これらの答えはすべてすばらしいですが、値がゼロの場合はすべて空の文字列を返します。
以下を試してください:
$v = 0;
$s = (string)$v ? (string)$v : "0";
ピリオド演算子を使用して文字列を連結できます(文字列に型キャストされます)。
$integer = 93;
$stringedInt = $integer . "";
または、より正確には、整数を文字列に型キャストするだけです。
$integer = 93;
$stringedInt = (string) $integer;
ここでの答えがうまく示すように、はい、いくつかの方法があります。ただし、PHPでは実際にそうする必要はほとんどありません。PHPを記述する「独断的な方法」は、必要に応じて型を透過的に強制する言語のルーズタイプシステムに依存することです。整数値の場合、これは通常問題ありません。ただし、浮動小数点値には十分注意する必要があります。
strlen(12345);
が、ないために$x = 12345; echo $x[2];
これらのすべてのキャスト関数は非常に有用であり、プログラマーの多くは、より多くの彼らの種類をチェックしています。
$amount = 2351.25;
$str_amount = "2351.25";
$strCorrectAmount = "$amount";
echo gettype($strCorrectAmount); //string
したがって、エコーは戻り文字列になります。
$integer = 93;
$stringedInt = $integer.'';
より速い
$integer = 93;
$stringedInt = $integer."";
echo
(いわゆる文字列コンテキストで使用されます)。