3v4l.org

run code in 300+ PHP versions simultaneously
<?php // Start set_time_limit(0); echo "<pre>"; // Normal Recusion function m1($num) { return $num === 0 ? 1 : $num * m1($num - 1); } // Tail Recusion function m2($num) { return m2Helper($num, 1); } // Tail Recusion Helper function m2Helper($num, $acc) { return $num === 0 ? $acc : m2($num - 1, $acc * $num); } $result = array('m1' => 0,'m2' => 0); $no = 10; for($i = 0; $i < 1; ++ $i) { foreach ( array_keys($result) as $key ) { $alpha = microtime(true); $key($no); $result[$key] += microtime(true) - $alpha; } } echo '<pre>'; echo "Single Run\n"; print_r($result); echo '</pre>'; ?>

preferences:
29.08 ms | 402 KiB | 5 Q