Как правильно работать с числами с плавающей точкой в php?

В базе я храню не целые числа в виде string, далее, для вычислений преобразую в float, и после обратно в string.
Существует ли какой-нибудь класс для php для правильной работы с не целыми (float) числами?
Недавно видел в какой-то статье что-то вроде: "существуют еще такие странные люди, которые до сих пор работают в php с float числами напрямую, не используя класс ???".
Не подскажете, может кто знает этот класс, или есть иные привальные способы?
  • Вопрос задан
  • 2701 просмотр
Решения вопроса 3
DmitriyEntelis
@DmitriyEntelis
Думаю за деньги
1) Если не стоит задачи хранить больше ~60 знаков после запятой - лучше использовать вместо string - decimal с указанием количества знаков после запятой.
2) php.net/manual/ru/book.bc.php
Ответ написан
Комментировать
AxisPod
@AxisPod
Хранить числа в виде строки, уже за это можно отрубать голову. Зачем? Что такое правильная работа с числами с плавающей точкой? Чем не устраивает стандартный механизм? И в какой это статье вы читали? Учитывая порог вхождения PHP, то тут очень аккуратно нужно читать статьи. А учитывая, что незнамо кто может закомитить как ему видится и убить целый релиз, как было в своё время с 5.2.0, когда один умник с phpclub убил релиз вырубив передачу параметров в функцию по ссылке.

Для большой математики есть GMP, BC Math. А в обычной работе стандартного типа хватает по полной.
Ответ написан
miraage
@miraage
Старый прогер
Возможно, BCMath или GMP? Я точно не знаю. :)

php.net/manual/en/book.bc.php
php.net/manual/en/book.gmp.php
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы