在PHP中有方法将整数转换为字符串吗?
当前回答
可以使用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";
其他回答
这里的答案很好地证明了,是的,有几种方法。然而,在PHP中,实际上很少需要这样做。编写PHP的“教条方式”是依赖于该语言的松散类型系统,该系统将根据需要透明地强制输入类型。对于整数值,这通常没有问题。但是,使用浮点值时应该非常小心。
$foo = 5;
$foo = $foo . "";
现在$foo是一个字符串。
但是,你可能需要习惯选角。因为铸造是完成这类事情的正确方式:
$foo = 5;
$foo = (string)$foo;
另一种方法是用引号封装:
$foo = 5;
$foo = "$foo"
警告:下面的答案是基于错误的前提。将0数字转换为字符串总是返回字符串“0”,使所提供的代码成为冗余。
所有这些答案都很好,但如果值为零,它们都会返回一个空字符串。
试试下面的方法:
$v = 0;
$s = (string)$v ? (string)$v : "0";
$amount = 2351.25;
$str_amount = "2351.25";
$strCorrectAmount = "$amount";
echo gettype($strCorrectAmount); //string
echo将返回string。
有很多方法可以做到这一点。
两个例子:
$str = (string) $int;
$str = "$int";
有关更多信息,请参阅PHP类型杂耍手册。