Condition OU dans un if...

  • Auteur de la discussion Auteur de la discussion thierry8
  • Date de début Date de début
WRInaute accro
Hello,

Je ne sais pas si en php il existe une alternative à ceci:
Code:
if($var == 'condition1' || $var == 'condition3' || $var == 'condition3' || ...)

En effet lorsqu'il y a beaucoup de conditions, cela devient un peu lourd...
Je pensais à quelque chose comme:
Code:
if($var == 'condition1' | 'condition3' | 'condition3' |...)

Est-ce que qu'elle chose de similaire existe ?

Merci.
 
WRInaute discret
un switch :

switch( $var )
{
case 'condition1':
case 'condition2':
case 'condition3':
case 'condition4':
case 'condition5':

....;

break;

default:
truc 'sinon' ici...;

}

?
 
G
Grantome
Guest
Attention, c'est lourd avec un if, mais généralement le switch est plus lent. ;-)

Faut tester les 2
 
WRInaute discret
C'est pas possible en regex ?

Comme ça par exemple :

if(eregi('(condition1|condition2|condition3)', $var)){
...
}
 
WRInaute accro
Grantome a dit:
Attention, c'est lourd avec un if, mais généralement le switch est plus lent. ;-)

Faut tester les 2
Merci pour l'info...
Je ne le savais pas.

(mais le switch n'est pas une alternative possible dans mon cas, et je le trouve plus lourd aussi...)

zimounet a dit:
http://phpdebutant.org/article57.php
Je n'ai rien vue par rapport à ma demande... :?
 
WRInaute passionné
peut être créer une fonction et indenter ton code... :)

Code:
function compare($var)
{
return(
    $var == 'condition1' 
|| $var == 'condition3'
|| $var == 'condition3' 
|| ...

)

}


if (compare($var))
{
...
}
else
{...
}
 
WRInaute accro
ok ok...

mais... :lol: :oops:

Je ne demande pas une solution "alternative" au if, mais s'il est possible d'exploiter le if d'une autre manière...
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut