Это очень простая проблема для дублирования. Я делаю простое вычитание с использованием чисел с плавающей запятой. Как видно из приведенного ниже кода и соответствующего вывода, расчет неверен.Проблема вычитания с плавающей запятой в PHP
(PHP 5.6.6 на OSX El Capitan)
<?php
$bal = 20017.1;
$amt = 20000;
$newbal = $bal - $amt;
print_r(compact('bal', 'amt', 'newbal'));
echo "\n";
Как вы можете видеть из этого вывода, $ newbal не является правильным.
Array
(
[bal] => 20017.1
[amt] => 20000
[newbal] => 17.099999999999
)