在PHP中有方法将整数转换为字符串吗?


当前回答

$foo = 5;

$foo = $foo . "";

现在$foo是一个字符串。

但是,你可能需要习惯选角。因为铸造是完成这类事情的正确方式:

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

另一种方法是用引号封装:

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

其他回答

可以使用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

// The two examples above have the same end value...
// ... And so do the two below

// Explicit cast 
$items = (string)$var; // $items === "5";

// Function call
$items = strval($var); // $items === "5";
$amount = 2351.25;
$str_amount = "2351.25";

$strCorrectAmount = "$amount";
echo gettype($strCorrectAmount);    //string

echo将返回string。

在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";

我不推荐最后一个选项,但我在野外见过依赖于这种行为的代码,所以我想把它传递给大家。

有很多方法可以做到这一点。

两个例子:

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

有关更多信息,请参阅PHP类型杂耍手册。

你可以简单地使用以下命令:

$intVal = 5;
$strVal = trim($intVal);