如何在 PHP 中将字符串转换为数字
主题:PHP / MySQL
答案:使用类型转换
众所周知,PHP 不要求也不支持在变量声明中显式定义类型。 但是,您可以使用类型转换强制将变量评估为特定类型。
让我们尝试以下示例以了解其工作原理:
示例
<?php
$num = "2.75";
/* Cast to integer */
$int = (int)$num;
echo gettype($int); /* Outputs: integer */
echo $int; /* Outputs: 2 */
/* Cast to float */
$float = (float)$num;
echo gettype($float); /* Outputs: double */
echo $float; /* Outputs: 2.75 */
?>
您可以使用 (int)
或 (integer)
将变量转换为整数,使用 (float)
, (double)
或 (real)
将变量转换为浮点数。 同样,您可以使用 (string)
将变量转换为字符串,依此类推。
由于历史原因,PHP gettype()
函数在浮点数的情况下返回"double"。
或者,您也可以使用 intval()
函数来获取变量的整数值。
示例
<?php
echo intval(2); /* Outputs: 2 */
echo intval(2.75); /* Outputs: 2 */
echo intval('34'); /* Outputs: 34 */
echo intval('+34'); /* Outputs: 34 */
echo intval('-34'); /* Outputs: -34 */
echo intval(034); /* Outputs: 28 */
echo intval('034'); /* Outputs: 34 */
echo intval(1e10); /* Outputs: 10000000000 */
echo intval('1e10'); /* Outputs: 10000000000 */
echo intval(0xff); /* Outputs: 255 */
echo intval('0xff'); /* Outputs: 0 */
?>
FAQ 相关问题解答
以下是与此主题相关的更多常见问题解答: