3v4l.org

run code in 300+ PHP versions simultaneously
<?php $avg = 2; $calls = 100000; class Foo {} function f0($foo) {} function f1(Foo $foo) {} function f2(Foo $foo = null) {} $foo = new Foo(); $m = array(); for ($j = 0; $j < $avg; $j++) { $start = microtime(true); for ($i = 0; $i < $calls; $i++) { f0($foo); } $m[] = microtime(true) - $start; } var_dump(array_sum($m) / $avg); $m = array(); for ($j = 0; $j < $avg; $j++) { $start = microtime(true); for ($i = 0; $i < $calls; $i++) { f1($foo); } $m[] = microtime(true) - $start; } var_dump(array_sum($m) / $avg); $m = array(); for ($j = 0; $j < $avg; $j++) { $start = microtime(true); for ($i = 0; $i < $calls; $i++) { f2($foo); } $m[] = microtime(true) - $start; } var_dump(array_sum($m) / $avg);

preferences:
31.31 ms | 402 KiB | 5 Q