问题标签 [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 在 PHP 中进行计算bcmath
,并且需要e
通过小数指数进行计算。不幸的是,bcpow()
只接受整数指数。指数通常比浮点数允许的精度更高,因此普通的算术函数不会削减它。
例如:
结果"1"
出现错误“bc 数学警告:指数中的非零刻度”。
我可以使用其他功能来代替bcpow()
吗?
php - 为什么 bcmath 函数不会失去精度?
我们都知道处理浮点数可能会遇到这样的麻烦:
使用 bcmath 函数将有助于:
php手册:
但是为什么会这样呢?
我注意到前两个参数应该是字符串,我想知道这是不是因为这些函数以字符串方式处理数字?
php - 为什么在 PHP 中使用 bccomp 比较负零不等于正零?
我尝试使用 bccomp 将“+0.00000000000”与“+0.00000000000”进行比较。我希望结果为 0,但实际上得到 1。
php - 整分值需要PHP bcmath?
在 PHP 中,我正在编写一个应用程序,它需要精确到货币小数点右边的 2 位数字(例如:我关心1.23 === 1.23
但没有更多的右侧数字)。
我知道浮点数通常被认为是不好的做法,因为基于从小数点右边从 2 到 10 转换的性质,它们的值不精确。但是,在我对处理货币值的最佳实践的研究中,我看到了一些论点,即如果您需要大于整数值的精度,浮点数并不好。我显然不需要比整分值更高的精度。
那么,我的问题是:
- 是否值得付出额外的努力将值存储为与
bcmath
库一起使用的字符串? - 如果使用
bcmath
库,我应该将 MySQL 数据库中的值存储为字符串还是decimal
MySQL 支持?
谢谢!
php - PHP bcmath 与 Python 十进制
我正在使用 PHP 的bcmath
库对定点数执行操作。我期待得到与 PythonDecimal
类相同的行为,但我很惊讶地发现了以下行为:
Decimal
在 Python 中使用s 时,我得到:
这是为什么?当我使用它来执行非常敏感的操作时,我想找到一种方法在 PHP 中获得与 Python 中相同的结果(即(x / y) * y == x
)
php - 为什么 php bccomp 相等?
php 版本 5.4.33 php.ini: bcmath.scale = 0 (也试过 bcmath.scale = PHP_INI_ALL)
问题:
php5433 -r "echo bccomp(0.00000001, 0, 9);" 打印 0
php5433 -r "echo bccomp(1.00000001, 1, 9);" 打印 1
为什么?任何人都可以帮忙吗?
php - php中的十进制乘法
我对两位小数30.63
和0.15
. 我的计算器说它应该导致4.60
.
由此产生的结果是4.59
。
从我读过的内容来看,bcmul 是用来处理十进制数的?
非常感谢,
php - 如何将输出作为整数?
输入将由许多数字对组成,每个数字对位于单独的行中,数字用逗号分隔。这些数字可以长达 100 位。数字将是整数和派别数字,负数不会输入。输入将在文件末尾终止。
输出将是在其自己的单独行上的反向总和。对于每个输入对,应该有一个反向和。
我正在写这段代码,但没有给出正确的结果作为整数值 $number="36222813552166588601325554186418874001226412488844274840066661514,32814873748120642422248240335447 "; $int_array = array_map("intval", explode(",", $number));
得到输出:91+E562719451714.1
预期输出:68046696201386131133563894412955974001226412488844274840066661514
php - bcmath 计算没有给出准确的答案
用常规数学看一下这个例子:
答案如预期:
浮动(1.5)
但是,当在 BCMath 中执行相同操作时:
答案总是:
字符串(14)“1.499999999999”
虽然它应该是精确的“1.5”!
我已经尝试将默认比例值增加到 100、200、1000。我已经尝试专门为我的bcdiv
通话增加比例,但无论如何它不想给出 1.5 作为答案。
任何帮助将不胜感激
gmp - 如何安装 Intl、GMP 和 BCMath PHP 扩展?
Centos 6.8 决赛
php 7.0.16
Directadmin 控制面板
百胜安装 php-gmp
百胜安装 php-bcmath
百胜安装 php-intl
结果是:没有可用的包 xxx。
谢谢你。