Округление PHP 8.4 дает другой результат, чем 8.2Php

Кемеровские программисты php общаются здесь
Anonymous
Округление PHP 8.4 дает другой результат, чем 8.2

Сообщение Anonymous »

Я занимаюсь обновлением нашего кода с php 8.2 до 8.4
Я заметил, что мы получаем некоторые сбои при тестировании из-за того, что round() возвращает значения, отличные от ожидаемых. В конечном итоге проблему можно свести к округлению результата определенных умножений, дающему в некоторых случаях результаты, отличные от результатов 8.2. Например, round(365 * 0,7) теперь дает 255, тогда как в 8.2 — 256.
Разницу можно увидеть здесь:
https://3v4l.org/iT6T2#v8.4.14
В обеих версиях результат 365 * 0,7, очевидно, 255.49999999999997, так что проблема, должно быть, в раунде().
Я не понимаю, почему это происходит, может кто-нибудь меня просветить?

Подробнее здесь: https://stackoverflow.com/questions/798 ... t-than-8-2

Вернуться в «Php»