Condition ternaire

agparchitecture Messages postés 88 Date d'inscription jeudi 9 mars 2006 Statut Membre Dernière intervention 7 novembre 2010 - 23 mai 2009 à 22:32
agparchitecture Messages postés 88 Date d'inscription jeudi 9 mars 2006 Statut Membre Dernière intervention 7 novembre 2010 - 26 mai 2009 à 10:07
Bonsoir à tous,

Dans les conditions, il est possible de faire :

files_exists ($Fichier) ? require_once ($Fichier) : exit();

La question est peut-on faire deux "commandes" et si oui comment

Par exemple:

files_exists ($Fichier) ? require_once ($Fichier) : header ($NouvelleAdresse); exit();

Merci pour vos conseils qui m'aide énormément dans mon apprentissage.

4 réponses

nautilus99 Messages postés 661 Date d'inscription vendredi 26 septembre 2008 Statut Membre Dernière intervention 18 septembre 2009 1
24 mai 2009 à 04:37
même si cette construction est possible, ce n'est pas vraiment l'idéal.

Quand à mettre plusieurs fonctions dans un if implicite, là il faudrait tester, mais syntaxiquement ça donnerait quelque chose du genre:

$r = file_exists( $f ) ? (resuire_once($f) ) : ({ header($newaddress); exit(); ]) ;

mais sans vraiemnt tester je ne garantis rien.
Un if implicite est en général destiné à faire du simple, du très simple et immédiatement lisible, pas des usines à gaz, auquel cas, le bon vieux if () { true } else { false } reste le mieux...
0
agparchitecture Messages postés 88 Date d'inscription jeudi 9 mars 2006 Statut Membre Dernière intervention 7 novembre 2010
24 mai 2009 à 16:48
D'accord mais pour faire une redirection si le fichir n'existe pas il me faut juste placer un header et u exit pour éviter que le script continue.

Donc reste lisible, simple et rapide. Et ca m'évite les lignes d'un if () {condition} else {conditon}

merci
0
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
25 mai 2009 à 20:45
Salut,

Je n'ai pas pris le temps de tester, mais je suis de l'avis de Nautilus, un bon vieux if(){}else{} sera toujours plus lisible.
A mon humble petit avis il est inutile de tenter de gagner 2 lignes de code sur ça. Côté perf, c'est totalement invisible.
... il y a tellement d'autres lignes qui méritent surement d'être optimisées

La proposition de Nautilus fonctionne t elle ?

Cordialement,

Kohntark -
0
agparchitecture Messages postés 88 Date d'inscription jeudi 9 mars 2006 Statut Membre Dernière intervention 7 novembre 2010
26 mai 2009 à 10:07
Non ca ne foctionne pas et l seul message d'erreur que j'ai est que le ; n'est pas accepté dans la condition
0
Rejoignez-nous