问题标签 [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.
php - php计算折扣或税收
我正在尝试使用 PHP 中的 BCMATH 计算税收或折扣值。我需要 2 个小数位。这是我的做法:
我可以简单地将比例增加到 4 或类似的东西,现在会给我一个正确的结果。
所以问题是:我应该如何正确地做到这一点?我应该将比例设置为 4,然后 sprintf('%0.2f', $discount) 最后吗?或者有没有更好的方法来做到这一点?
php - 为什么 bcmul 返回一个与我指定的比例不同的数字?
我似乎在 php.net 文档中找不到任何解释以下结果的内容:
减法结果正是我所期望的(我指定了一个 4 位数的比例,它给了我一个结果)。乘法结果没有(我指定了一个 4 位数的比例,但它给了我一个 2 位数的结果)。为什么有区别?
注意: 我已经知道如何使用,而且我在数学上number_format()
也知道。0.06 === 0.0600
我只对理解为什么 BC Math 在结果的规模方面表现不同感兴趣。
注意#2: 如上所述,number_format()
不是这个问题的答案,并且引用的“重复问题”中使用的答案都建议使用number_format()
. 我很清楚这个函数可用于将数字格式化为指定的精度。我只是想知道为什么这些函数的返回值有不同的比例,而不是如何修复它们以便它们这样做。
php - bcdiv 最小左/右操作数
回声 bcdiv(0.0001, 86400, 30);
此代码回显:0.000000001157407407407407407407
回声 bcdiv(0.00001, 86400, 30);
这段代码回显:0.000000000000000000000000000000
这是为什么?两个操作数都有最小值吗?我需要将 0.00000001 除以 86400,这可能吗?
这是 bcdiv 的文档:http: //us2.php.net/manual/en/function.bcdiv.php
php - Bcmul 报告 0
我有一段简单的代码,如下所示。
当它应该是 4.47274449 时,它会输出 0.00000000。如果我将比率更改为 0.0001,那么它会输出正确的数字,任何高于 4 位小数的数字,它都会报告 0。
我做错了什么还是这是一个已知的限制或什么?如果是这样的话,似乎相当大。
php - bcdiv 使用带有科学记数法的非常小的浮点数导致“除以零”错误
使用 bcdiv,我不能使用科学记数法除小浮点数:
工作代码:
结果是 :
字符串(20)“100000000.0000000000”
非工作代码:
结果是 :
警告:bcdiv() [function.bcdiv]:在 C:\wamp\www\utilitaires\test_bcdiv.php XX NULL 行中除以零
我怎样才能正确地进行这种划分,而精度损失较小?
php - How to add a library to PHP?
My version of PHP, 5.3.8, doesn't contain BC-Math, which is needed for many cryptocurrency functions.
Google hasn't been particularly helpful for links on how to install this particularly library, so I'm at a total loss on how to add it to my already running PHP webserver.
Might someone point me in the direction of how to install this?
php - 为什么 bcdiv 总是返回 0?
我对 BIG 数字有一个小问题,其中 BC 数学函数bcdiv
总是在非零结果上返回零。
例如 :
与传统方法相比:
我不确定为什么会出现差异。BC 数学函数是否仅适用于字符串,如果是这样,我如何事先将 int 值转换为字符串(首选内联表示法,例如(int)$myvar;
)---如果这是问题所在。
php - 为什么 php 4.3 中的 bcmath 比 php 5+ 快得多?
决定运行一个快速测试,看看如何bcmath
在各种版本的 PHP 上运行,并注意到与 4.3 相比,最新和最好的版本在速度上明显缺乏,
我想知道是否有人知道这背后的原因是什么,和/或如何在 5+ 上提高速度,使其与 4.3 相当。
另请注意,5.6+ 的内存消耗是 4.3 相同操作所需的三倍:
php - Bcmath 随机添加小数位
我有一个从网上获得的使用 bcmath 函数的 PHP 函数:
对于任何有效输入,该函数将随机添加“.0000000000”到输出。
前任:
这是在运行 php-fpm 的 2 个不同的 nginx 服务器上测试的。请帮助我了解这里出了什么问题。谢谢
php - 我应该将 BCMath 用于大约 1,2 或 3 位小数的值吗?
我的数据库中有大约 10-15 个数字,精度为 1、2 或 3 位小数,包括有符号和无符号。
使用的数据类型示例:
我在 PHP 中计算它们是这样的:
然后我使用round()
这样的一些功能:
结果$result_round
最多为:100.000,999
我正在检查这个:bcmath PHP 库的精度是多少? 并且答案表明,如果您不使用 round()、printf 等函数,这将不是问题。
那我应该使用 BCMath-extension 吗?(只是因为我正在使用round()
)