![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 287 Pomógł: 0 Dołączył: 26.02.2003 Skąd: Ow/Pn Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 162 Pomógł: 1 Dołączył: 15.05.2007 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Witam sprintf zaokragla mi dane ktore mu zapodam... kombinowalem ale nic nie pomaga
i np z 19.99 robi 20.00 :/ moze ktos wie jak to rozwiazac ? o wiele łatwiej by było gdybyśmy wiedzieli co chcesz osiągnąć |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 1 Dołączył: 27.01.2009 Ostrzeżenie: (0%) ![]() ![]() |
Odpowiedź jest mocno spóźniona, ale może ta wiadomość jeszcze się komuś przyda. Problem prawdopodobnie polega na tym, że funkcja sprintf zaokrągla, a nie "obcina" liczby. Jeśli np. wstawimy
Kod <?php $cena = 16.39; $cena_netto = sprintf("%01.2f", $cena * 1.22); return $cena_netto; ?> to cena_netto =19.9958 i po zaokrągleniu daje do części setnych otrzymujemy cena_netto = 20.00. Jeśli nie chcesz by liczba była zaokrąglana można użyć np. czegoś takiego: Kod <?php $cena = 16.39; $cena_netto = sprintf("%01.4f", $cena * 1.22); $cena_netto = substr($cena_netto, 0, -2); return $cena_netto; ?> U mnie działa. |
|
|
![]()
Post
#4
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Ale kombinujesz... number_format" title="Zobacz w manualu PHP" target="_manual.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 13:52 |