3v4l.org

run code in 300+ PHP versions simultaneously
<?php function add($x) { return function($y = null) use ($x) { if (is_null($y)) return $x; else return add($x + $y); }; } var_dump(add(2)); echo add(2)->__invoke(40)->__invoke();

preferences:
39.96 ms | 402 KiB | 5 Q