У меня не установлен php, но в python:
$ python
>>> 0.1+0.7
0.79999999999999993
>>>
Не все числа в базе 10 могут быть точно представлены в системе базы 2.Проверьте статью в Википедии:
раздел Фракции в двоичном формате.В частности, эту строку:
Fraction Decimal Binary Fractional Approx.
1/10 0.1 0.000110011... 1/16+1/32+1/256...
1/10 нельзя представить конечным образом в базе 2. Таким образом, 0,1 + 0,7 не может быть точно рассчитано в базе 2.
Никогда не предполагают, что вычисления с плавающей точкой точны, они рано или поздно укусят вас.