1000 php to dollar,PHP:将美元转换为美分

博客讨论了在PHP中将带有美元符号的货币值转换为整数美分时遇到的问题,包括浮点数精度问题。作者提出了一种方法,通过移除美元符号,检查小数点,然后转换为整数来解决这个问题,但对不熟悉浮点数处理的开发者来说可能过于复杂。文章探讨了这个常见用例,并寻求更合理的解决方案。
摘要由CSDN通过智能技术生成

作为输入,我想接受以下任何一项:“$12.33”,“14.92”,“$13”,“17”,“14.00001”.作为输出,我分别想要1233,1492,1300,1700和1400.这显然不像看起来那么容易:

$input = '$64.99'; // value is given via form submission

$dollars = str_replace('$', '', $input); // get rid of the dollar sign

$cents = (int)($dollars * 100) // multiply by 100 and truncate

echo $cents;

?>

这输出6498而不是6499.

我假设这与浮点值的不准确性有关,并且避免这些是我首先转换为整数美分的全部原因.我想我可以使用逻辑,比如“摆脱$符号,检查是否有小数点,如果是这样,检查填充到2之后有多少个字符,然后截断,然后删除句点,如果没有一个附加两个零,并希望最好的“但使用字符串操作这似乎是荒谬的.

当然从表单中获取货币价值并将其作为美分存储在数据库中是一种常见的用例.当然,有一种“合理”的做法.

对? …..对? :其中

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值