go to bug id or search bugs for
Hi I am not sure if I have found a bug - what do you think.......?
$var1 = -0.32 + (0.1*3.2)
This should give var1 the value 0, instead it gives
Interestingly if you increase -0.33 and 3.3 respectively it gives the correct answer. Werid!
Add a Patch
Add a Pull Request
This is normal floating point math behavior
This is nothing to do with PHP, its just part of the way computers store floating-point numbers. It stores an aproximation of 0.32, as close as it can get, but when you start multiplying it, the little difference between 0.32 and what it stored starts to get magnified.
BTW, 5.5511151231258E-17 is 0.000000000000000055511151231258 which is *really* closed to 0.
If you want to output formatted numbers, you should either round it, or use printf()