3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php class Foo{ public static $alphabet = 'ABCDEFGHIKLMNOPQRSTVXYZabcdefghiklmnopqrstvxyz'; public static function shorten($number) { $alphabet = self::$alphabet; $base = strlen($alphabet); $number = intval($number, 10); $shortened = ""; while ($number > 0) { $remainder = $number % $base; $shortened = $alphabet[$remainder] . $shortened; $number = (int) ($number / $base); } return $shortened; } public static function unshorten($string) { $alphabet = self::$alphabet; $base = strlen($alphabet); $length = strlen($string); $returnVal = 0; for ($i=$length-1; $i >= 0; --$i) { $ind = strpos($alphabet, $string[$i]); if ($ind === false) { return false; } $returnVal += (int)($alphabet[$ind] * pow($base, $i)); } } } $shortened = Foo::shorten(12343336363636636); echo $shortened . "\n"; echo Foo::unshorten($shortened);
Output for 7.1.0
OSkMYgpOmE Warning: A non-numeric value encountered in /in/ntckS on line 30 Warning: A non-numeric value encountered in /in/ntckS on line 30 Warning: A non-numeric value encountered in /in/ntckS on line 30 Warning: A non-numeric value encountered in /in/ntckS on line 30 Warning: A non-numeric value encountered in /in/ntckS on line 30 Warning: A non-numeric value encountered in /in/ntckS on line 30 Warning: A non-numeric value encountered in /in/ntckS on line 30 Warning: A non-numeric value encountered in /in/ntckS on line 30 Warning: A non-numeric value encountered in /in/ntckS on line 30 Warning: A non-numeric value encountered in /in/ntckS on line 30
Output for 5.0.0 - 5.6.21, hhvm-3.10.0 - 3.12.0, 7.0.0 - 7.0.14
OSkMYgpOmE
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/ntckS on line 5
Process exited with code 255.
Output for 4.3.0 - 4.3.1, 4.3.5 - 4.4.1
Parse error: parse error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/ntckS on line 5
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error, expecting `T_OLD_FUNCTION' or `T_FUNCTION' or `T_VAR' or `'}'' in /in/ntckS on line 5
Process exited with code 255.