Partage
  • Partager sur Facebook
  • Partager sur Twitter

switch à plusieurs variables

Sujet résolu
    21 novembre 2008 à 22:33:04

    Bonjour,

    Dans les fonctions php, il en existe une qui est très pratique : switch.
    Ceci dit, je me demandais s'il y avait moyen de l'utiliser avec plusieurs variables ?
    Au lieu d'avoir :
    <?
    switch ($i) {
    case 0:
        echo "i égale 0";
        break;
    case 1:
        echo "i égale 1";
        break;
    case 2:
        echo "i égale 2";
        break;
    }
    ?>
    


    quelque chose du genre :

    <?
    switch ($i && $i2) {
    case 0 && 0:
        echo "i égale 0 et i2 = 0";
        break;
    case 1 && 0:
        echo "i égale 1 i2 = 0";
        break;
    case 2 && 1:
        echo "i égale 2 i2 = 1";
        break;
    }
    ?>
    


    Si oui, ça serrait peut-être intéressant de le mettre dans le tuto officiel PHP du site :-°
    Bonne soirée à tous.
    • Partager sur Facebook
    • Partager sur Twitter
      21 novembre 2008 à 23:20:55

      tu peux en utilisant 2 switch *-)

      Tu fais le premier normal,
      Pui un second

      En gros :

      Tu regarde $i
      = 1
      alors => tu regarde i2
      = 1
      = 2
      = 3
      = 4
      puis tu regardes $i
      =2
      alors => tu regarde i2
      = 1
      = 2
      = 3
      = 4
      Et ainsi de suite,
      Je ne pense pas que tu puisses faire autrement hélas :(
      • Partager sur Facebook
      • Partager sur Twitter
        22 novembre 2008 à 0:25:33

        A part avec des if/elseif/else, je vois pas... Et puis les switch imbriqués, c'est lourd, et hideux...
        • Partager sur Facebook
        • Partager sur Twitter
          22 novembre 2008 à 1:04:21

          thebidi,
          Tu n'as parfois pas d'autre choix ^^'

          Rien ne t'empêche bien sur de faire tout d'abord des if et puis un switch dans le if :p (ou l'inverse) en fonction du nombre de condition à faire dans un cas ou l'autre :p
          • Partager sur Facebook
          • Partager sur Twitter
            22 novembre 2008 à 12:09:09

            Merci de vos réponses,
            Mais en fait, j'avais posté un autre sujet pour générer des calcules algébriques (et les solutions :-° ) ... qui est resté sans réponse définitive ...

            j'avais pensé le faier avec des if, elseif, else mais mon code devenait hyper long ... pour raccourcir mon script, la fonction switch (a deux variables) m'aurait bien aidée :p .

            Vous croyez qu'il existe une fonction "switch à 2 variables en php" en java ???
            Ou s'il existe un language spécialisé dans les mathématiques qui aurait une fonction qui pourrait m'aider à résoudre mes calcules algébriques (ex : 1a + 2b - 3c + 2a = 3a +2b -3c ^^ ).
            Les calcules algébriques sont simples mais, c'est pour une école ...

            Merci d'avance.

            • Partager sur Facebook
            • Partager sur Twitter
              17 août 2012 à 22:40:05

              C'est vrai qu'il est un peu tard pour poster une solution, mais la meilleure solution à ce problème est de mettre les deux variables dans un tableau, et ensuite comparer le tableau dans le Switch...

              <?php
              $var1 = "variable1";
              $var2 = "variable2";
              $tableau = array($var1, $var2);
              
              switch ($tableau){
              	case array("variable1", "variable2"):
              		echo "Le tableau correspond !";
              	break;
              	
              	case array(NULL, NULL):
              		echo "Le tableau ne correspond pas.";
              	break;	
              }
              ?>
              
              • Partager sur Facebook
              • Partager sur Twitter
                17 septembre 2012 à 23:50:39

                Quelques années après mais ça peut toujours servir :soleil:
                Merci !
                • Partager sur Facebook
                • Partager sur Twitter
                  9 décembre 2015 à 13:56:16

                  ...Et bien moi cela m'aura bien aidé !

                  Merci.

                  • Partager sur Facebook
                  • Partager sur Twitter
                    9 décembre 2015 à 14:53:28

                    C'est rigolo quand les sujet sont enterré, puis déterré, puis ré-enterré puis redéterré xD

                    Que la solution de gLc26 t'ai aidé tant mieux c'est pour cela que le forum existe mais pas la peine de remonté un topic alors que d'autre on des probleme plus récent :(

                    1a + 2b - 3c + 2a = 3a +2b -3c


                    Faire de l’algèbre avec juste un switch c'est ingérable parce qu'il faudrai gérer et intégrer dans le switch tout les calcul possible raccourcir son code c'est bien mais defois le bien et l'ennemi du mieux

                    • Partager sur Facebook
                    • Partager sur Twitter
                    "Il est hélas devenu évident aujourd’hui que notre technologie a dépassé notre humanité"  A.E.

                    switch à plusieurs variables

                    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                    • Editeur
                    • Markdown