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 :

[Tableaux] conditions


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    220
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 220
    Par défaut [Tableaux] conditions
    Bonjour à tous,

    J'aimerais savoir si en php, il y a moyen de connaitre lequel des éléments d'une condition active la condition

    a=3
    si(a=1 ou a=2 ou a=3) --> dire que c'est le 3ème cas qui active la condition
    MERCI

  2. #2
    Membre Expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Par défaut
    Si tu as besoin de savoir quel condition se vérifie il vaut mieux séparer les conditions.

  3. #3
    Rédacteur
    Avatar de BrYs
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    2 014
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 2 014
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    if (condition1) {
     ...
    }
    elseif (condition2) {
     ...
    }
    etc ...
    ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    switch (condition) {
     case 'condition1'
     break;
     case 'condition2'
     break;
     etc ...
    }
    Ca fait partie des bases ça.

  4. #4
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    220
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 220
    Par défaut
    Je crois pas que je me suis fait comprendre, désolé, j'ai bcp de 'or' dans ma condition et ils active le meme traitement...(c'est pour ca que je ne fais pas de switch)

    Dans ce cas là, est-il de possible de connaitre quel est le 'or' qui a retourné true?

    Est-ce que vous m'avez compris?

  5. #5
    Membre Expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Par défaut
    Nous t'avions compris.
    Si tu fais réellement le même traitement pour toutes tes conditions alors je vois pas pourquoi tu veux connaître laquelle a été vérifiée. Si tu veux la connaître, alors c'est que tu affectes un traitement différent quelque part

  6. #6
    Membre Expert
    Avatar de Alexandre T
    Homme Profil pro
    Chef de projets AMO
    Inscrit en
    Mai 2002
    Messages
    1 213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projets AMO
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 213
    Par défaut Re: conditions
    Citation Envoyé par samplaid
    a=3
    si(a=1 ou a=2 ou a=3) --> dire que c'est le 3ème cas qui active la condition
    Tu peux le faire avec un tableau dans lequel tu stockes tes conditions.
    Tu boucles sur le tableau en incrémentant un compteur. Dès que ca marche tu sors de la boucle, ton incrément à la bonne valeur.

    Autre méthode (très moche à mon sens)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $i=0;
    if ($a==1 && ++$i || $a==2 && ++$i){
      //$i a le numéro de la condition 1 ou 2 qui déclenche
      ......
    }
    Alexandre Tranchant
    Chef de projet AMO pour le Cerema.
    Retrouvez mes articles sur PHP et Symfony

  7. #7
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    220
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 220
    Par défaut
    merci bcp

  8. #8
    Membre Expert
    Avatar de Alexandre T
    Homme Profil pro
    Chef de projets AMO
    Inscrit en
    Mai 2002
    Messages
    1 213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projets AMO
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 213
    Par défaut Re: conditions
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $i=0;
    if (++$i && $a==1 || ++$i && $a==2 ){
      //$i a le numéro de la condition 1 ou 2 qui déclenche
      ......
    }
    J'ai fait une petite erreur, mieux vaut mettre ++$i devant, car le premier booléen a false peut par optimisation déclencher un saut du second test. (car 0 AND x donne 0 quelquesoit x)
    Alexandre Tranchant
    Chef de projet AMO pour le Cerema.
    Retrouvez mes articles sur PHP et Symfony

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 09/06/2009, 12h38
  2. [Tableaux] Conditions d'une boucle non respectée
    Par Lenezir dans le forum Langage
    Réponses: 2
    Dernier message: 05/03/2008, 09h17
  3. [Tableaux] Rajouter une condition dans un test
    Par kevinf dans le forum Langage
    Réponses: 11
    Dernier message: 08/11/2006, 16h03
  4. [Tableaux] Mais que fait cette condition exactement?
    Par pierrot10 dans le forum Langage
    Réponses: 5
    Dernier message: 21/09/2006, 12h36
  5. [Tableaux] Condition : je cale
    Par nebil dans le forum Langage
    Réponses: 4
    Dernier message: 24/04/2006, 08h39

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