我想将这些类型的值“3”、“2.34”、“0.234343”等转换为数字。在JavaScript中,我们可以使用Number(),但在PHP中有没有类似的方法?

Input             Output
'2'               2
'2.34'            2.34
'0.3454545'       0.3454545

当前回答

$a = "10";

$b = (int)$a;

您可以使用它在PHP中将字符串转换为int。

其他回答

$a = "10";

$b = (int)$a;

您可以使用它在PHP中将字符串转换为int。

您可以使用:

((int) $var)   ( but in big number it return 2147483647 :-) )

但最好的解决方案是使用:

if (is_numeric($var))
    $var = (isset($var)) ? $var : 0;
else
    $var = 0;

Or

if (is_numeric($var))
    $var = (trim($var) == '') ? 0 : $var;
else
    $var = 0;

除了Boykodev的回答,我还建议:

Input             Output
'2' * 1           2 (int)
'2.34' * 1        2.34 (float)
'0.3454545' * 1   0.3454545 (float)

PHP将在限制范围内为您提供

<?php
   $str = "3.148";
   $num = $str;

   printf("%f\n", $num);
?>

使用一元运算符(+)。例如:

$n1 = +'7';
$n2 = '2.34';
$n2 = +$n1;

var_dump($n1):int(7)var_dump($n2):浮点(2.34)