为了账号安全,请及时绑定邮箱和手机立即绑定

在 PHP 中将值转换为 FLOAT 会丢失小数点。基本上将值转换为 INT

在 PHP 中将值转换为 FLOAT 会丢失小数点。基本上将值转换为 INT

PHP
慕姐8265434 2023-05-12 14:51:10
我正在调用一个 PHP 表单,浮点值被正确接收,但是如果我将它转换为 FLOAT,或者之后立即,该值将丢失所有小数点数字,我不希望这样。我尝试使用 floatval 但结果相同。//code$time_in_seconds = $_POST["time_in_seconds"];//form value is 1.23fecho $time_in_seconds;//echo 1.23$time_in_seconds = (float)$time_in_seconds;echo $time_in_seconds;//echo 1
查看完整描述

2 回答

?
慕慕森

TA贡献1856条经验 获得超17个赞

在您的机器上安装正确的语言环境设置。可能您已经安装了 IT(意大利)语言环境文件并且有,一个小数点分隔符,因此转换不会“看到”您传递给它的浮点数。

setlocale(LC_ALL, 'en-US.utf8');

但是将这一行输入到您的代码中是不够的。您还必须安装语言环境文件。


查看完整回答
反对 回复 2023-05-12
?
呼啦一阵风

TA贡献1802条经验 获得超6个赞

您可能正在使用逗号而不是指向分隔的小数点。

"1,23"(which will be cast to 1) 不同于"1.23"(which will be cast to 1.23)


查看完整回答
反对 回复 2023-05-12
  • 2 回答
  • 0 关注
  • 192 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信