Döngüler üzerinde PHP bazı küçük testler çalışan edilmiştir. Benim yöntemi iyi olup olmadığını bilmiyorum.
Bir ters döngü normal bir döngü daha hızlı olduğunu bulduk.
Ayrıca bir süre devre daha hızlı olduğunu bulduk için bir döngü.
Setup
<?php
$counter = 10000000;
$w=0;$x=0;$y=0;$z=0;
$wstart=0;$xstart=0;$ystart=0;$zstart=0;
$wend=0;$xend=0;$yend=0;$zend=0;
$wstart = microtime(true);
for($w=0; $w<$counter; $w++){
echo '';
}
$wend = microtime(true);
echo "normal for: " . ($wend - $wstart) . "<br />";
$xstart = microtime(true);
for($x=$counter; $x>0; $x--){
echo '';
}
$xend = microtime(true);
echo "inverse for: " . ($xend - $xstart) . "<br />";
echo "<hr> normal - inverse: "
. (($wend - $wstart) - ($xend - $xstart))
. "<hr>";
$ystart = microtime(true);
$y=0;
while($y<$counter){
echo '';
$y++;
}
$yend = microtime(true);
echo "normal while: " . ($yend - $ystart) . "<br />";
$zstart = microtime(true);
$z=$counter;
while($z>0){
echo '';
$z--;
}
$zend = microtime(true);
echo "inverse while: " . ($zend - $zstart) . "<br />";
echo "<hr> normal - inverse: "
. (($yend - $ystart) - ($zend - $zstart))
. "<hr>";
echo "<hr> inverse for - inverse while: "
. (($xend - $xstart) - ($zend - $zstart))
. "<hr>";
?>
Average Results
The difference in for-loop strong>
normal for: 1.0908501148224
inverse for: 1.0212800502777
normal - ters: ,069570064544678
The difference in while-loop strong>
normal while: 1.0395669937134
inverse while: 0.99321985244751
normal - inverse: 0.046347141265869
The difference in for-loop and while-loop strong>
için ters - ters süre: ,0280601978302
Questions
My question is can someone explain these differences in results? And is my method of benchmarking been correct?