gpt4 book ai didi

PHP : The awk subtraction giving exponential values

转载 作者:行者123 更新时间:2023-12-02 04:37:41 25 4
gpt4 key购买 nike

当我减去两个值时,我得到了 awk 结果,错误是我得到的指数值是 2.7755575615629E-17 而不是 0。任何我遗漏的申请,请提出建议。这些情况仅在某些情况下发生,例如 0.66、0.67、0.33,

我使用的代码原型(prototype)如下,

                    $_SESSION['x'] = 1;
$_SESSION['x'] = $_SESSION['x'] - 0.83;
echo ( $_SESSION['x']- 0.17) ;
echo '<br>';

但是在反转值时,0 一切都很好

                    $_SESSION['x'] = 1;
$_SESSION['x'] = $_SESSION['x'] - 0.17;
echo ( $_SESSION['x']- 0.83) ;
echo '<br>';

最佳答案

这是因为它是 float 。并且按照手册

“ float 的大小取决于平台,尽管最大约 1.8e308 和大约 14 位十进制数字的精度是常见值(64 位 IEEE 格式)。”

http://php.net/manual/en/language.types.float.php

现在有两件事可以通过使用类型将结果转换为 (int) 或将结果四舍五入来完成。

另一种选择是使用 sprintf

这是一个例子

$a  = 0.00001234;
echo $a ;

输出将是

1.234E-5

现在如果我们这样做

echo (int)$a ;
The output is 0

echo round($a) ;

output will be 0

最后如果我们这样做

echo sprintf('%f', $a);

We will get 0.000012

关于PHP : The awk subtraction giving exponential values,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21598667/

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