IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Compter le nombre de tours dans une boucle


Sujet :

Langage PHP

  1. #1
    Invité
    Invité(e)
    Par défaut Compter le nombre de tours dans une boucle
    Bonjour,
    J'ai une boucle foreach et j'aimerais afficher le nombre de tour que la boucle a fait. Cependant l'affichage du nombre de tour ne doit pas être fait a la sortie de la boucle (trop facile), mais dans la boucle :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $i=0;
    foreach ($arr as $valeur)
    {
     $i++;
    echo $lenombredetourtotal;
    }
    Merci de votre aide

  2. #2
    Membre éprouvé Avatar de tdutrion
    Homme Profil pro
    Architecte technique
    Inscrit en
    Février 2009
    Messages
    561
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2009
    Messages : 561
    Points : 1 105
    Points
    1 105
    Par défaut
    Bonjour,

    J'avoue ne pas comprendre ton problème...

    Si tu veux afficher le nombre de tour (nombre d'éléments dans ton tableau ?), pourquoi n'utilises-tu pas count ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $nb = count($arr);
    foreach ($arr as $valeur)
    {
        echo $nb;
    }

  3. #3
    Invité
    Invité(e)
    Par défaut
    Parce qu’en réalité, j'ai une condition dans ma boucle foreach
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    $i=0;
    foreach ($arr as $valeur)
    {
       if($valeur > 50)  
       {
          $i++;
          echo $lenombredetourtotal;
       }
    }
    dsl de l'oublie

  4. #4
    Membre éprouvé Avatar de tdutrion
    Homme Profil pro
    Architecte technique
    Inscrit en
    Février 2009
    Messages
    561
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2009
    Messages : 561
    Points : 1 105
    Points
    1 105
    Par défaut
    Dans ce cas tu es obligé de faire un parcours pour compter tes occurrences, puis de l'afficher hors de ce parcours.

  5. #5
    Invité
    Invité(e)
    Par défaut
    c'est a dire, je ne te suis pas très bien là.

  6. #6
    Membre éprouvé Avatar de tdutrion
    Homme Profil pro
    Architecte technique
    Inscrit en
    Février 2009
    Messages
    561
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2009
    Messages : 561
    Points : 1 105
    Points
    1 105
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    $i=0;
    foreach ($arr as $valeur)
    {
       if($valeur > 50)  
       {
          $i++;
       }
    }
    echo $i; // le nombre de tour total;
    Après honnêtement, si tu dois faire ça c'est que tu as un problème de conception...

  7. #7
    Modérateur
    Avatar de Vil'Coyote
    Homme Profil pro
    Développeur adélia & Web
    Inscrit en
    Février 2008
    Messages
    4 583
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur adélia & Web
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2008
    Messages : 4 583
    Points : 7 503
    Points
    7 503
    Par défaut
    si j'ai tout capté tu a un tableau et lorsque tu parcoure le tableau en fonction d'une condition tu dois afficher la valeur de parcours?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
     
    $i=0;
    $j=0;
    $k=0;
     
    $j=sizeof($arr)
     
    foreach ($arr as $valeur)
    {
       if($valeur > 50)  
       {
          $i++;
       }
     
       if( $j == $k) { echo $i; }
     
       $k++
     
    }

  8. #8
    Membre éclairé

    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2011
    Messages
    411
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2011
    Messages : 411
    Points : 735
    Points
    735
    Par défaut
    Citation Envoyé par Théocrite Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    $i=0;
    foreach ($arr as $valeur)
    {
       if($valeur > 50)  
       {
          $i++;
       }
    }
    echo $i; // le nombre de tour total;
    Après honnêtement, si tu dois faire ça c'est que tu as un problème de conception...
    ça ne répond pas du tout à la question :
    Cependant l'affichage du nombre de tour ne doit pas être fait a la sortie de la boucle (trop facile), mais dans la boucle
    Et à mon avis, il fait d'autres traitements dans la boucle (sinon, ça ne serait pas demandé comme ça, je pense, j'imagine...j'espère )

    Par ailleurs, soyons fou, on peut sortir la grosse artillerie !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo array_sum(array_map(create_function('$v', 'if($v>=50) return 1;'), $arr));

Discussions similaires

  1. Compter le nombre d'occurence dans une chaine
    Par shirya dans le forum Langage
    Réponses: 2
    Dernier message: 16/10/2007, 21h39
  2. Compter le nombre de fichiers dans une arborescence
    Par Olivier Regnier dans le forum Shell et commandes GNU
    Réponses: 9
    Dernier message: 22/08/2007, 11h29
  3. Réponses: 2
    Dernier message: 07/05/2007, 00h43
  4. Compter le nombre de colonne dans une table
    Par Coin dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 01/12/2006, 17h03
  5. Compter le nombre de caractere dans une chaine
    Par jmjmjm dans le forum C++
    Réponses: 13
    Dernier message: 19/11/2006, 12h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo