Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Błędne obliczenia matematyczne
Forum PHP.pl > Forum > PHP
SHiP
Czy ktoś mi wytłumaczy dlaczego

  1. <?php
  2. echo (2537573709%5);
  3. ?>


daje -2 a nie 4 ?
erix
Strzelam, że przekroczyłeś zakres 32-bitowej liczby całkowitej; próbuj BCMathem.
Crozin
Liczba ta wykracza poza zakres SIGNED INTEGER, stąd mogą być te problemy - skorzystaj z rozszerzenia dla php, którego nazwy zapomniałem, a służy do operowania na dużych liczbach. winksmiley.jpg
wookieb
  1. <?php
  2. echo bcmod(2537573709, 5);
  3. ?>
erix
~wookieb, znowu zrobiłeś int. tongue.gif

Do BCMath liczby podstawia się w formie stringów.
wookieb
A sprawdź panie.
erix
Cytat
string bcmod ( string left_operand, string modulus )
wookieb
Ale sprawdź czy działa.
SHiP
Inty też działaja winksmiley.jpg Dzięki, doinstalowałem roszerzenie i chodzi w porzadku. Teraz tylko przepisać wszystkie operatory...
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.