PHP类型转换浮点数->整数

4

考虑以下PHP代码:

// total is 71.24 (float)
$value = $total * 100;
var_dump($value);
$valuecast = (int)$value;
var_dump($valuecast);
settype($value, 'int');
var_dump($value);

var_dump($value) 显示 float(7124)

var_dump($valuecast) 显示 int(7123)

执行 settype 后, var_dump($value) 显示 int(7123)

如何获取正确的类型转换?

2个回答

4

de3链接似乎不再在线。请尝试使用https://www.php.net/manual/en/language.types.float.php#warn.float-precision - Mark Lopez

2

对于将浮点数转换为整数,我建议使用round。这是为了解决IEEE浮点不精确的问题。


谢谢,它起作用了!!!我尝试了所有PHP转换函数,除了这一个(当然)。 - lrosa

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接