在PHP中将整数转换为string

有没有办法将整数转换为PHP中的string?

您可以使用strval()函数将数字转换为string。

从维护的angular度来看,显然你正在试图做的,而不是一些其他更深奥的答案。 当然,这取决于你的上下文。

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

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

两个例子:

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

有关更多信息,请参阅“PHP杂志types手册”。

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

现在$foo是一个string。

但是,你可能想习惯铸造。 铸造是完成这种事情的正确途径。

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

另一种方法是封装在引号中:

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

有很多方法可以将整数转换为PHP中的string。

传统的CS方法是将该variables作为string进行转换

 $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的隐式types转换和string插值

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

最后,与上面类似,任何接受和返回一个string的函数都可以用来转换和整数。 考虑以下

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

我不会推荐最终的select,但是我已经看到了依赖这种行为的代码,所以我认为我会传递它。

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

或者可能是:

 $string = (string)$intValue ; 

要么:

 settype(&$intValue ,'string'); 

所有这些答案都很好,但是如果值为零,它们都会返回一个空string。

尝试以下操作:

 $v = 0; $s = (string)$v : (string)$v ? "0"; 

有许多可能的转换方式:

 $input => 123 sprintf('%d',$input) => 123 (string)$input => 123 strval($input) => 123 settype($input, "string") => 123 

你可以使用句点运算符并连接一个string(它将被转换为一个string):

 $integer = 93; $stringedInt = $integer.""; 

或者,更准确地说,您可以只键入整数string:

 $integer = 93; $stringedInt = (string) $integer; 

我会说这取决于上下文。 strval ()或者铸造操作符(string)可以被使用,然而在大多数情况下,PHP会决定什么是对你有好处的,例如,如果你使用echo或者printf …一个小注释:die()需要一个string不会显示任何int 🙂

正如这里的答案很好地说明的,是的,有几种方法。 但是,在PHP中,你很less需要这样做。 编写PHP的“教条式”方式是依赖于语言的宽松input系统,它会根据需要透明地强制types。 对于整数值,这通常没有问题。 不过,你应该非常小心浮点值。

您可以简单地使用以下内容:

 $intVal = 5; $strVal = trim($intVal); 
 $integer = 93; $stringedInt = $integer.''; 

比…更快

 $integer = 93; $stringedInt = $integer."";