3v4l.org

run code in 300+ PHP versions simultaneously
<?php // Everything you enter here will be executed by our servers. Try it! $factorial = call_user_func( function ($le) { return call_user_func( function ($f) { return $f($f); }, function ($f) use ($le) { return $le(function ($x) use ($f) { return call_user_func($f($f), $x); }); } ); }, function ($factorial) { return function ($x) use ($factorial) { if ($x > 0) { return $x * $factorial($x - 1); } return 1; }; } ); var_dump($factorial(1)); var_dump($factorial(2)); var_dump($factorial(3)); var_dump($factorial(4));

preferences:
65.7 ms | 402 KiB | 5 Q