3v4l.org

run code in 300+ PHP versions simultaneously
<?php $start = microtime(true); $fn = @create_function('$a,$b', 'return log($a * $b);'); $v = 0; for ($i = 0; $i < 1000; $i++) $v += $fn($i, $i); echo("create_function: " . (microtime(true) - $start) . "\n"); $start = microtime(true); $v = 0; for ($i = 0; $i < 1000; $i++) $v += eval("return log($i * $i);"); echo("eval: " . (microtime(true) - $start) . "\n"); $start = microtime(true); $fn = fn($a, $b) => log($a * $b); $v = 0; for ($i = 0; $i < 1000; $i++) $v += $fn($i, $i); echo("arrow function: " . (microtime(true) - $start) . "\n"); $start = microtime(true); $fn = function ($a, $b) { return log($a * $b); }; $v = 0; for ($i = 0; $i < 1000; $i++) $v += $fn($i, $i); echo("anonymous function: " . (microtime(true) - $start) . "\n");

preferences:
30.77 ms | 405 KiB | 5 Q