Тип float не отличается точностью, страдают от ошибок округления и сравнивать как обычно их нельзя. Почему так отлично написано на специальном сайте floating-point-gui.de.
В PHP узнать, равны ли два float и не нарваться на ошибки можно так:
$equal = \abs($a - $b) < PHP_FLOAT_EPSILON;
PHP_FLOAT_EPSILON
— машинный ноль для PHP.
Для PHP < 7.2 можно в качестве epsilon использовать 0.0001.