#php #php7
При работе с числами на php вылазит проблема с точностью. Например: 0.1 - 0.000023 = 0.09997700000000001 Пошарил по разным закаулкам интернета и везде предлагают разные решения: round(); sprintf(); number_format(); и много других библиотек и функции Собственно прошу совета, какой метод наиболее правильный и который будет всегда работать с максимальной точностью
Ответы
Ответ 1
В документации по этому поводу есть отсылка к математическим вычисления произвольной точности:(в блоке "внимание") http://php.net/manual/ru/language.types.float.phpОтвет 2
Советую использовать библиотеку BCMath для вычисления высокой точности. Например: $a = 0.1; $b = 0.00023; echo bcsub($a, $b, 10); Третий необязательный параметр используется для установки количества знаков после десятичного разделителя в результате.
Комментариев нет:
Отправить комментарий