Bienvenue sur horslimite.net
Ce site vous propose tutoriels de programmations (php javascript ...) forum compteur de connectés, compteur de visites, script php, téléchargement de logiciel, Blog etc...
 
aide webmastering webmaster compteur forum Menu
home
  • News
  • Recherche
  • Téléchargement
  • Statistiques
  • Tutoriels      
  • PHP     
  • JavaScript     
  • Crack
  • Linux     
  • Back orifice
  • Faille include (php)
  • Membre      
  • Inscription
  • Liste des membres
  • Votre profil
  • Compteur de visites
  • Compteur de connectés
  • Votre carte membre
  • Messagerie interne
  • Blog
  • Service      
  • Whois
  • Header d\\\\'une page
  • Obtenir une IP
  • Générateur de méta-tags
  • Forum



    Votez pour ce site au Weborama
    > tutoriel > astuce php > php : Les boucles


    php : Les boucles


    Tutorial écrit par chapodepay
    tutorial php : les boucles.


    Definition :

    Une boucle en programmation est une action que l'on va répété un certain nombre de fois prédéfinie ou soumis a condition.
    Les boucles sont indispensables pour l'élaboration de script complexe style forum, gestion de fichier, et tout ce qui manipule des series de données.



    Pré-acquis :

    base du php,
    les conditions,
    les variables tableaux,
    et de préférence les fonctions.



    Introduction :

    Le php utilise des structures de boucles venant du C (comme les conditions et tant de truc).
    instruction break : L'instruction break permet de sortir d'une boucle à tout moment.
    => appel : break;
    instruction continue : L'instruction continue permet de revenir au début de la boucle.
    => appel : continue;


    exemple :
    <?
    for($i=0;is_array($tablo) && isset($tablo[$i]); $i++) {
    if( $tablo[$i] == 'suivant' ) {
    continue;
    }
    if( $tablo[$i] == 'fin' ) {
    break;
    }
    }
    ?>


    les différentes boucles (liste non exaustive) :


    boucle for :

    for([initialisations]; [condition] ; [action récurrente]){
    [instruction]
    }

    exemple :
    nous avons une var tableau définie ainsi :
    <?
    $tablo = array("toto", "tobi", "valérie", "daniel");
    ?>
    nous allons a l'aide de la boucle for() parcourir et afficher les données contenues dans cette variable.
    <?
    for
    ($i=0;is_array($tablo) && isset($tablo[$i]); $i++) {
    echo $tablo[$i]."<br>\n";
    }
    //initialisation : $i=0 car nous démarrons le parcour de cette var a $tablo[0], on aurait pu démarré a $tablo[2]

    //condition #1 : is_array($tablo) nous vérifions que $tablo est bien une var tableau, ici pas de doute certe...

    //condition #2 : isset($tablo[$i]) nous vérifions que $tablo[$i] existe, soit dénifie, pour arréter notre boucle a la dernier valeur dans $tablo pour éviter les boucles sans fin

    //action récurrente : $i++ est une incrémentation de la var $i (+1 a chaque tour), nous sert a parcourir de 1 en 1 les valeur de la var tableau.
    //instruction : echo $tablo[$i] va afficher $tablo[$i] qui est la valeur de $tablo parcourue
    ?>
    résultat a l'écran :
    toto tobi valérie daniel
    résultat coté source :

    toto<br> tobi<br> valérie<br> daniel<br>

     

    boucle while :

    while( [condition] ){
    [instruction]
    }

    Tant que la condition est définie, la boucle continue... comme dans toute boucle... l'initialisation si il y a besoin doit etre définie préalablement, et y doit y avoir soit une incrémentation en dans le bloc instruction, soit une instruction de sortie de boucle ( breack; )

    ATTENTION aux boucles infinies, l'oublie de l'incrémentation ou instruction de sortie et monnaie courante (du moins chez moi)

    exemple :
    <?
    $tablo = array("toto", "tobi", "valérie", "daniel");
    $i='0';
    while(is_array($tablo) && isset($tablo[$i])) {
    echo $tablo[$i++]."<br>\n";
    }
    ?>
    Ici l'incrémentation qui assure le parcoure de la var tableau $tablo et bien réalisé dans l'instruction d'affichage echo ($i++)

    Le bloc de condition est identique a l'exemple de la boucle for(), je ne la re-détaillerais pas.
    Résultat identique a l'exemple de la boucle for().


    boucle do .. while :

    La condition de sortie est située en fin de boucle. Ainsi la boucle est parcourue une fois au minimum.
    <?
    $tablo = array("toto", "tobi", "valérie", "daniel");
    $i=0;
    do{
    echo $tablo[$i++]."<br>\n";
    }
    while(isset($tablo[$i]));
    ?>
    Ici encore le résultat est totalement identique aux boucles précédentes, l'intéret ici et que l'instruction est éxécité avant que la condition soit vérifié, soit éxécuté minimum 1 fois... personnellement jamais utilisé. (si vous trouver une utilisation, hésitez pas)

    boucle foreach :

    Boucle de parcour de variable tableau par exellence, très interressante dans le cas de var tableau multidimensionnelle.
    Sans condition autre que celle de parcourrir la var tableau tant qu'elle est définie (identique a une condition isset($tablo[$i]) ).

    Nous allons faire les exemple a partir de la var tableau $var_tablo a deux dimensions définie ainsi :
    <?
    $
    var_tablo
    = array("nom" => "pelican", "prenom" => "julien", "adresse" => "pas tres loin de paris");
    ?>
    pour parcourrir une var tableau en prennant seulement la valeur de chaque clef :
    <?
    foreach($var_tablo AS $valeur){
    echo $clef."<br>\n";
    }
    ?>
    résultat a l'écran :
    pelican julien pas tres loin de paris
    coté source :
    pelican<br> julien<br> pas tres loin de paris<br>
    pour parcourrir une var tableau en prennant la clef et la valeur:
    <?
    foreach
    ($var_tablo AS $clef => $valeur){
    echo $valeur." : ".$valeur."<br>\n";
    }

    ?>
    résultat a l'écran :
    nom : pelican prenom : julien adresse : pas tres loin de paris
    coté source :
    nom : pelican<br> prenom : julien<br> adresse : pas tres loin de paris<br>
    exemple pour une var tableau multi-dimension $zevardeouf :
    <?
    $
    zevardeouf
    = array("président" => array("nom" => "daniel", "departement" => "75016"), "comptable" => array("nom" => "valérie", "departement" => "78200"), "codeur" => array("nom" => "chapodepay", "departement" => "78800") );
    foreach($zevardeouf as $clef => $valeur){
    echo "<b>".$clef."</b> : ";
    foreach($zevardeouf[$clef] as $clef2 => $valeur2)
    echo "<li>".$clef2." : ".$valeur2."<br>\n";
    }
    ?>
    résultat a l'écran :
    président :
  • nom : daniel
    departement : 75016
    comptable :
  • nom : valérie
    departement : 78200
    codeur :
  • nom : chapodepay
    departement : 78800


    coté source :
    <b>président</b> : <li>nom : daniel<br> <li>departement : 75016<br> <b>comptable</b> : <li>nom : valérie<br> <li>departement : 78200<br> <b>codeur</b> : <li>nom : chapodepay<br> <li>departement : 78800<br>

    Voila, je vais m'arreter la dessus, les bases des boucle php sont expliqué et je suis fatigué.
    en esperant que ce tuto serve a quelqu'un.

    tutorial par chapodepay reproduction interdite
  •  
    page générée en 137 millisecondes