Qui va le plus vite - while ou for?

Les webmestres demandent beaucoup au sujet de while et for. Lequel des 2 est le plus rapide?
J'ai pris les devants et j'ai créé un test qui calcul le temps d’exécution avec while et un autre test qui calcul le temps d’exécution avec for.
.01
.02
.03
.04
.05
.06
.07
.08
.09
.10
.11
.12
.13
.14
.15
.16
.17
.18
.19
.20
.21
.22
.23
.24
.25
.26
.27
.28
.29
.30
 
<?php 
 
define
('MAX',20000);
 
function
f1()  { 
   
$a=0;
    while(
$a <= MAX) {
        echo
$a. '<br />';
       
$a++;
    } 

 
 
function
f2()  { 
    for(
$a=0; $a<= MAX; $a++) {
        echo
$a. '<br />';
    }

 
 
$t1 = microtime(true);
f1(); 
echo
'Temps 1: ' , (microtime(true) - $t1) , "<br />";

$t2 = microtime(true); 
f2(); 
echo
'Temps 2: ' , (microtime(true) - $t2) , "<br />";

?>


Résultats:
Temps 1: 0.172783
Temps 2: 0.155426


Il semblerait après plusieurs tests que la boucle for soit légèrement plus rapide que la boucle while. Je dis légèrement car ayant pris 20 000 itérations lors du test, je n'ai obtenu que 0.02 seconde comme différence. Sur des routines plus classique, cette différence ne sera que de quelques millisecondes.

Conclusion: Inutile de faire de gros calculs mentaux, vous pouvez programmer librement en utilisant soit for ou soit while sans vous souciez du temps d’exécution !!