3v4l.org

run code in 300+ PHP versions simultaneously
<?php function micro_parse($a) { $parts = explode(' ', $a); return [ (int)$parts[1], (int)substr($parts[0], 2, 6) ]; } function micro_diff($a, $b) { return [ $b[0] - $a[0], $b[1] - $a[1] ]; } function micro_fmt($a) { return sprintf('%d.%06d', $a[0], $a[1]); } $str = 'foobar'; $iter = 100000; $algos = ['md5', 'fnv1a32', 'fnv1a64']; foreach($algos as $algo) { $start = microtime(); for( $i=0; $i<$iter; $i++ ) { $h = hash($algo, $str); } $end = microtime(); printf("%8s: %s\n", $algo, micro_fmt(micro_diff(micro_parse($start), micro_parse($end)))); }

preferences:
25.94 ms | 402 KiB | 5 Q