3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php // тест для foreach function foreach_test($range) { // массив $array = range(1, $range); // старт $start = microtime(true); // обработка массива foreach ($array as &$value) { $value /= 2; } // финиш $finish = microtime(true); // время выполнения return round($finish - $start, 5); } // тест для array_walk function array_walk_test($range) { // массив $array = range(1, $range); // старт $start = microtime(true); // обработка array_walk($array, function(&$value){ $value /= 2; }); // финиш $finish = microtime(true); // время выполнения return round($finish - $start, 5); } // тесты $tests = array(1000); // выполнение тестов и результаты foreach ($tests as $range) { $ft = foreach_test($range); $awt = array_walk_test($range); $div = round($awt / $ft, 2); echo "Количество элементов: {$range} <br>"; echo "Время foreach: {$ft}с <br>"; echo "Время array_walk: {$awt}с <br>"; echo "foreach быстрей array_walk в {$div} раз <br><br>"; }