3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php $pot = ("23410620792819748.00e-18" * 1337) + 1.7 ; //$pot = "6898557993159892,00.00" *1; echo $pot."\n"; echo gettype($pot)."\n"; echo (!preg_match('/[^0-9]/',''.$pot)) ? "YES .... Bypass\n":"no this isnt correct \n"; echo (((int)round($pot) - 33)) ? " yeS we are float \n":"NO we not float \n"; if(!preg_match('/[^0-9]/',''.$pot) && ((int)round($pot) - 33)) { $pot = (int)round($pot)-33;echo " POT after - is: \n".$pot."\n";echo gettype($pot)."\n"; }else{ echo "\nWRONG\n";$potAA = (int)round($pot)-33;echo " This is what we get out\n".$potAA."\n";echo gettype($potAA)."\n"; } $pot = (int)round($pot)-33; echo "WE are before check \n".$pot."\n";echo gettype($pot)."\n"; if($pot =='float'){echo "\ngood YOU ROCK\n"; }else{echo "\nWRONG you suck\n";}
based on eXCfl
Output for 4.3.0 - 7.2.0
33 double YES .... Bypass NO we not float WRONG This is what we get out 0 integer WE are before check 0 integer good YOU ROCK