lorik Posté 24 Juin 2005 Posté 24 Juin 2005 Bonjour, Je suis en train d'assayer de comprendre un script open source en php, et je bute sur une ligne (entre autres ) : $_SESSION['A'] = (GetVar('A')=='') ? $_SESSION['A'] : GetVar('A'); Ma question concerne le '?' et le ':'. Je suppose que c'est une structure de programmation habituelle, mais je ne vois pas ce que ça signifie. Merci de vos lumières...
Dan Posté 24 Juin 2005 Posté 24 Juin 2005 Salut Lorik, C'est une équivalence à un "if then else". En clair: print $a > 0 ? "positif" : "négatif ou nul"; dit: si $a est supérieur à 0, on écrit "positif", dans le cas contraire on écrit "négatif". Donc la règle générale est condition ? action si vrai : action si faux; Dan
Morgan_R Posté 24 Juin 2005 Posté 24 Juin 2005 Bonjour, C'est une autre façon d'écrire un if else: opérateur ternaire Donc ceci aurait pu s'écrire de cette maniére: if (GetVar('A')=='') {$_SESSION['A'] = $_SESSION['A'];}else {$_SESSION['A'] = GetVar('A');} quoique je ne vois pas trop l'intérêt de faire $_SESSION['A'] = $_SESSION['A']; , plus simple me semble: if (GetVar('A')!='') {$_SESSION['A'] = GetVar('A');}
lorik Posté 24 Juin 2005 Auteur Posté 24 Juin 2005 Merci à tous les deux (ça dégaine vite ! ). Les if else, je vois. A +
Dan Posté 24 Juin 2005 Posté 24 Juin 2005 Bon, Dan trop rapide pour moi . Vaut mieux deux réponses que pas du tout, non ?
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant