すみません、ちょっと教えてください。

$x = (0.1 + 0.7) * 10;

echo $x."\n";

echo (int)$x."\n";

これを実行すると、

8
7

と表示されますが、なぜ最初に「8」が表示されるのか、理由がよくわかりません。

なぜでしょうか。

(例えばJavaScriptで同じ計算をすると「8」にはなりません)