Hallo,
leider weiß ich nicht mehr weiter.
Bei der 'Umwandlung' einer Zahl in einen Integer ist manchmal das Ergebnis um '1' zu klein.
PHP-Code:
for($i = 511.84; $i < 511.88; $i += .01) {
echo($i.' - '.($i*100).' - '.(doubleval($i)*100).' - '.(intval(doubleval($i)*100)).'<br>');
}
Das ergibt die Ausgabe:
511.84 - 51184 - 51184 - 51184
511.85 - 51185 - 51185 - 51185
511.86 - 51186 - 51186 - 51185
511.87 - 51187 - 51187 - 51186
511.88 - 51188 - 51188 - 51187
Warum inkrementiert intval ab 51186 ?
Die Berechnung 'intval(doubleval($i)*100)' benutze ich in einem Web und habe hier zum Testen nur mal eine Schleifen darum gesetzt.
Entferne ich doubleval, so ist der Fehler immer noch drin.
Entferne ich intval, so werden die Zahlen korrekt angezeigt.
Viele Grüße
Frank