问题标签 [bcmath]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1547 浏览

php - 在 PHP 中使用 bcmath 计算第 N 个根

我们正在寻找 PHP 中的第 N 个根。我们需要对一个非常大的数字执行此操作,Windows 计算器返回 2。使用以下代码,我们得到 1。有人知道这是如何工作的吗?

0 投票
2 回答
757 浏览

php - bcmath 有时返回浮点数,有时返回舍入结果

我有一个变量$newTime,它是以秒为单位的时间mktime(),我想将它转换为天数。

在这种情况下,它结束了86.400(这是一天中的秒数),我尝试将它除以86.400得到天数(四舍五入)。

但有时我会得到:

而有时:

这是代码:

当我不使用 bcmath 时,只使用常规数学 ( $newTime / (60*60*24)),我每次都会得到浮动结果。

0 投票
1 回答
706 浏览

php - javascript 等效于 bcpowmod

我正在编写一个可以解码我用 PHP 制作的 RSA 加密的 javascript 版本。一切正常,除了我没有与 bcpowmod 等效的 javascript。

我将 PHP JS 库用于其他功能,但它没有 bcpowmod。

如果我使用默认的数学运算符,例如: (pow(block,q)) % r 我会得到 NAN。

有没有适合我的方法或 js 库?

0 投票
1 回答
371 浏览

php - 为什么我的 bc-math 不起作用?

在我的函数中,我想使用 php bc-math 来提高精度。我试图替换所有操作无济于事。这是浮点到字符串的转换问题吗?

0 投票
1 回答
561 浏览

php - 将 db 中的浮点数转换为与 bcmath() 一起使用或如何使用 bcmath?

我从数据库查询中获得了几个值。我得到的值看起来像:

10.810000000000000497我只想使用'10.81'。

或者

2.6899999999999999467我只想使用 2.69

使用时ini_set('precision', 20)

例如,我应该如何将这些值与 bcadd() 一起使用?因为我只想添加 10.81 + 2.69?

0 投票
2 回答
89 浏览

php - 使用 BCMath 时是否有一致的方法来测试 0(零)?

运行以下命令,我希望收到N, Y, Y.

我理解为什么我不这样做,因为'0.00' != '0'对于第二个示例,但是否有一致的测试方法,0无需强制转换为 float/double,也无需=====.


笔记

为什么我不想放弃===

如果我通过诸如 之类的方法将功能作为更大项目的一部分提供get_total_cost(),我认为其他开发人员在期望函数返回数值时不得不放弃严格比较是不直观的作为一个字符串。

0 投票
5 回答
3495 浏览

php - PHP bcdiv() 在大数上除以零

以下代码给出“警告:bcdiv() [function.bcdiv]:除以零...”

为什么会这样?

如果我将值放在“”中,那么它不会发出警告。

0 投票
2 回答
39108 浏览

php - 使用 php.ini 启用 BCMath?

我需要启用 BC Math,但我不想使用 --enable-bcmath 来启用它,主要是因为我不了解那条路线。

有没有办法只使用 php.ini 来做到这一点?

0 投票
2 回答
1488 浏览

php - PHP|BCMath:如何获得 bcscale 值?

如何获得 BCMath 的 bcscale() 方法中的比例设置?

例子:

我如何获得25?谢谢!

0 投票
1 回答
1890 浏览

php - PHP货币计算精度

我有一个项目,将钱作为 bigint 列存储在数据库中(以美分存储)。我打算改写这个东西来使用 BMATH。我不介意整数,但它们给了我一些以美分存储的可怕的舍入错误事件,我怀疑我在 BMATH 中可能有相同的舍入错误。在某些情况下会出现问题,例如在此伪代码中:

插入数据库时​​,我对所有以美分为单位的值执行 round()。现在我有一个记录,上面写着:

现在,如果我做 12134 - 460 ...我显然得到 11674 而不是 11675。我还怀疑如果我改变计算方式(例如,最后将所有内容乘以数量),我会得到甚至不同的结果.

我会使用 BMATH 得到这种行为吗?结果会取决于数学运算的顺序吗?我将如何使用 BMATH 正确计算上述内容并将其存储在 DB 中(假设需要 2 个小数位)?