gpt4 book ai didi

php - 为什么使用 bcmath 减法不能正常工作?

转载 作者:行者123 更新时间:2023-12-04 14:41:15 29 4
gpt4 key购买 nike

假设我有

$foo = bcsub(bcdiv(1, 3, 20), 0.00001, 20);

它返回 0.33333333333333333333

如果我有

$foo = bcsub(bcdiv(1, 3, 20), 0.0001, 20);

它返回 0.33323333333333333332

如果我有

$foo = bcsub(0.333333333333333333, 0.00001, 20);

它返回 0.33333333333333331483

如果我有

$foo = bcsub(0.333333333333333333, 0.0001, 20);

它返回 0.33323333333333331482

那么为什么它不能正确减去,它是带有 float 的东西?但是当 bcdiv(1, 3, 20) 时它工作正常

最佳答案

使用字符串而不是 float 作为 BC 函数的参数:

$foo = bcsub(bcdiv("1", "3", "20"), "0.00001", "20");

如果您使用 float (即 0.00001),PHP 会将此数字转换为不精确的 float 。如果您使用字符串(即“0.00001”),BC 将转换为任意精度数字,这是精确的。

关于php - 为什么使用 bcmath 减法不能正常工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6570391/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com