Qu'est ce que while (1) ?

Shwan
Invité n'ayant pas de compte PHPfrance

01 mars 2009, 17:11

Salut !!!
Je comprend pas pourquoi on utilise un while (1) de cette manière
<?php
    $i = 0;
    while ($i++ < 5) {
        echo "Dehors<br />\n";
        while (1) {
            echo "&nbsp;&nbsp;Milieu<br />\n";
            while (1) {
                echo "&nbsp;&nbsp;Intérieur<br />\n";
                continue 3;
            }
            echo "Ceci n'est jamais atteint.<br />\n";
        }
        echo "Ceci non plus.<br />\n";
}
?>

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

01 mars 2009, 17:25

C'est comme while(true == true), c'est une condition toujours vraie donc boucle sans fin, d'où le "jamas atteint".

Shwan
Invité n'ayant pas de compte PHPfrance

01 mars 2009, 17:46

C'est comme while(true == true), c'est une condition toujours vraie donc boucle sans fin, d'où le "jamas atteint".
Merci beaucoup , maintenant j'ai compris , c'est à dire que 1 va être convertie en sa valeur booléenne qui est toujours vrai 1=>True .
or pourquoi on utilise continue 3; ?
Merci

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

01 mars 2009, 17:52

Justement, sans ce "continue" ta boucle serait sans fin. Cette instruction permet de l'ignorer, le 3 indique d'en ignorer 3, soit ici de revenir au premier while.

Remplace le 3 par un 2 pour voir :)