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>"; }

Shows result from various feature-branches currently under review from the php developers. Contact me to have additional branches featured.

Output for Typed properties v2
Количество элементов: 1000 <br>Время foreach: 5.0E-5с <br>Время array_walk: 0.0001с <br>foreach быстрей array_walk в 2 раз <br><br>
Output for Array change keys
Количество элементов: 1000 <br>Время foreach: 7.0E-5с <br>Время array_walk: 0.00011с <br>foreach быстрей array_walk в 1.57 раз <br><br>
Output for Lexical anon
Количество элементов: 1000 <br>Время foreach: 6.0E-5с <br>Время array_walk: 0.00013с <br>foreach быстрей array_walk в 2.17 раз <br><br>

Archived branches

Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page