Moin!
Scheinbar passiert das selbe mit den Funktionen bcadd, bcsub, bcdiv und bcmul. Die 5.Stelle nach dem Komma wird wohl nicht beachtet und deswegen wird die ganze Zahl als 0 gewertet.
Soll ich dazu mal einen Bug im php bugtracker erstellen oder gibts irgendwie eine gute Erklärung dafür?
Ja, die gibts: Du verwendest float-Zahlen, die du als Parameter an bcmath übergibst. Für diese Zahlen gelten dieselben Einschränkungen hinsichtlich Genauigkeit und Rundungsfehlern.
Die einzige Möglichkeit, beliebig genaue Zahlen in PHP zu behandeln, ist als STRING. Deshalb erlauben die bcmath-Funktionen auch nur Strings als Parameter, und PHP wandelt Zahlen still und leise in Strings um.
- Sven Rautenberg