3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php function encode($int) { $int = round($int); $left = 0xffffffff00000000; $right = 0x00000000ffffffff; $l = ($int & $left) >>32; $r = $int & $right; return unpack('d', pack('N2', $l, $r))[1]; } function decode($float) { $set = unpack('N2', pack('d', $float)); return $set[1] << 32 | $set[2]; } echo decode(encode(10000000000000)).'<br><br>'; $float = encode(10000000000000); echo $float.'<br>'; echo decode($float).'<br>'; echo decode(1.1710299640683E-305).'<br>'; echo 1.1710299640683E-305;echo "<br>"; var_dump(1.1710299640683E-305 == $float);
Output for 5.4.0 - 5.6.28, hhvm-3.10.0 - 3.12.0, 7.0.0 - 7.1.0
10000000000000<br><br>1.1710299640683E-305<br>10000000000000<br>-6629571225977708544<br>1.1710299640683E-305<br>bool(false)
Output for 4.4.2 - 4.4.9, 5.1.0 - 5.3.29
Parse error: syntax error, unexpected '[' in /in/L1phJ on line 11
Process exited with code 255.
Output for 4.3.0 - 4.3.1, 4.3.5 - 4.4.1, 5.0.0 - 5.0.5
Parse error: parse error, unexpected '[' in /in/L1phJ on line 11
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error in /in/L1phJ on line 11
Process exited with code 255.