Na forum
4programmers.net korzystamy z plików cookies. Część z nich jest niezbędna do funkcjonowania
naszego forum, natomiast wykorzystanie pozostałych zależy od Twojej dobrowolnej zgody, którą możesz
wyrazić poniżej. Klikając „Zaakceptuj Wszystkie” zgadzasz się na wykorzystywanie przez nas plików cookies
analitycznych oraz reklamowych, jeżeli nie chcesz udzielić nam swojej zgody kliknij „Tylko niezbędne”.
Możesz także wyrazić swoją zgodę odrębnie dla plików cookies analitycznych lub reklamowych. W tym celu
ustaw odpowiednio pola wyboru i kliknij „Zaakceptuj Zaznaczone”. Więcej informacji o technologii cookie
znajduje się w naszej
polityce prywatności.
A skąd wytrzasneliście, że 153,6346 w zaokrągleniu do części setnych to 153,64 ? Pierwszą odrzuconą cyfrą(w tym przypadku rząd części tysięcznych) jest 4, a że 4<5 to nasza liczba w zaokrągleniu wyniesie 153,63!!!
Ja jednak uważam, że 153,6346 w przybliżeniu do dwóch miejsc po przecinku to jednak 15,63 a nie 153,64... Ja nie widzę żadnych błędów w zaokrąglaniu przez te funkcje.
Proponuję zwrócić uwagę na fakt iż round() jak i number_format() nie zaokrągli np. 153.6346 do dwóch miejsc po przecinku prawidłowo.
round(153.6346, 2); // 153.63
number_format(153.6346, 2, '.', '')
Jak widać wynik będzie wynosił 153.63 a nie jak powinno być 153.64.
Do poprawnego zaokrąglania można użyć funkcji:
http://pl2.php.net/manual/pl/function.round.php#78414
Testowałem ją zaledwie pobieżnie ale wyglądała dosyć ciekawie.
To coś czego szukałem
hehe, właśnie dodałem :p
No i chyba round tez by sie przydalo :P