- var_dump: documentation ( source)
- microtime: documentation ( source)
- pow: documentation ( source)
- md5: documentation ( source)
<?php
$a = array();
for($i = 0; $i < pow(10, 6); $i++) {
$a[$i] = array(
md5(microtime(true))
);
}
$sum = 0;
$times['for']['before'] = microtime(true);
for($j = 0; $i < count($a); $i++) {
$sum += 1000;
}
$times['for']['after'] = microtime(true);
unset($sum);
$sum = 0;
$times['foreach']['before'] = microtime(true);
foreach($a as $k) {
$sum += 1000;
}
$times['foreach']['after'] = microtime(true);
unset($sum);
$t_for = $times['for']['after'] - $times['for']['before'];
$t_foreach = $times['foreach']['after'] - $times['foreach']['before'];
echo "<pre>";
var_dump(array($times, 'is for faster than foreach?' => $t_for < $t_foreach, $t_for, $t_foreach));