IF ou ELSEIF

Eléphant du PHP | 130 Messages

17 mars 2006, 23:20

Bonsoir,

J'ai un très gros script qui utilise des if,

if(condition){
execution;
}

if(condition){
execution;
}

etc

Je me demandais si mon script ne serait pas plus rapide si je remplaçais les if par des elseif ? Qu'en dites-vous, cela va-til vraiment changer quelque chose ? Un des deux est-il plus gourmand en mémoire que l'autre ? merci.

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

17 mars 2006, 23:28

Salut,

un "elseif" est une condition qui intervient si le test qui le précède n'est pas confirmé (false).

if = si
elseif = sinon

donc soit l'un soit l'autre, si une condition est remplie les autes ne seront pas exécutées.
Tu peux ausi utiliser un switch()

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 130 Messages

17 mars 2006, 23:41

Justement à ce propos Truc, tu dis :

if = si

ça veut dire que PHP va vérifier tous les if jusqu'a la fin du script, mais si :

elseif = sinon

quand un elseif est true, PHP saute t'il tous les else if qui restent ou bien il va continuer a tester tous les elseif restant jusqu'a la fin du script ?
Si oui ça revient au même qu'un simple if, non ?

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

17 mars 2006, 23:56

dès qu'une condition est remplie le script saute la structure de tests.

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Invité
Invité n'ayant pas de compte PHPfrance

17 mars 2006, 23:59

Ok merci pour tes éclaircissements. :)

Eléphant du PHP | 353 Messages

18 mars 2006, 00:16

elseif = sinon
C'est "sinon si"

Toutes les explications sont par là!

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

18 mars 2006, 00:26

elseif = sinon
C'est "sinon si"
Euh oui bien sûr un oublis :P


Un pti [Résolu] tout de même :wink:

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute