3v4l.org

run code in 300+ PHP versions simultaneously
<?php function checkFloat(&$var) { if (is_float($var) || is_numeric($var)) { $var = unpack("f", pack("f", $var))[1]; } else { throw new \Exception("Expect float."); } } $var = 0.9; checkFloat($var); var_dump($var); $var = 0.7; checkFloat($var); var_dump($var); $var = 0.3; checkFloat($var); var_dump($var); $var = 0.1; checkFloat($var); var_dump($var);
Output for 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.26, 8.4.1 - 8.4.13
float(0.8999999761581421) float(0.699999988079071) float(0.30000001192092896) float(0.10000000149011612)

preferences:
101.43 ms | 406 KiB | 5 Q