ولإثبات كلامي اكثر . قمت بكتابة هذا الكود وتجربتة شخصيا
كود PHP:
<pre>
<?
$con = mysql_connect('localhost','username','password');
mysql_select_db('db_name',$con);
$stimer = explode( ' ', microtime() );
$stimer = $stimer[1] + $stimer[0];
$result = mysql_query('select * from table_name LIMIT 400');
while($row = mysql_fetch_array($result)){
/* xxx */
}
$etimer = explode( ' ', microtime() );
$etimer = $etimer[1] + $etimer[0];
echo 'While loop took: '.($while = $etimer-$stimer).'ms';
echo '<br/>';
$stimer = explode( ' ', microtime() );
$stimer = $stimer[1] + $stimer[0];
$result = mysql_query('select * from table_name LIMIT 400');
$y = mysql_num_rows($result);
for($x = 0; $x < $y; $x++){
$row = mysql_fetch_array($result);
/* xxx */
}
$etimer = explode( ' ', microtime() );
$etimer = $etimer[1] + $etimer[0];
echo 'For loop took: '.($for = $etimer-$stimer).'ms';
echo '<br/><br/>';
if($while > $for){
echo 'So <b>for loop</b> is faster by '.($while-$for).'ms';
}
else{
echo 'So <b>While loop</b> is faster by '.($for-$while).'ms';
}
?>
</pre>
وامثلة للنتائج هي
كود HTML:
While loop took: 0.00167798995972ms
For loop took: 0.00359106063843ms
So While loop is faster by 0.00191307067871ms
=======================
While loop took: 0.00165200233459ms
For loop took: 0.00182318687439ms
So While loop is faster by 0.000171184539795ms
=======================
While loop took: 0.00166392326355ms
For loop took: 0.00529599189758ms
So While loop is faster by 0.00363206863403ms