Journal du Net > Développeurs > Contributions > Soumettez votre meilleure astuce PHP

APPEL
A CONTRIBUTION

Vous manipulez le langage PHP au quotidien pour concevoir votre site Web ? Vous avez certainement une astuce à partager !
Participez
 Echo conditionnel simplifié  
Eric Thouvenin , Bordeaux

Quel est en 3 lignes l'objectif de votre astuce ?
Il est parfois nécessaire d'inclure dans du code HTML un affichage d'une variable PHP, sous conditions particulières.
Mais afin de ne pas trop mélanger HTML et PHP, il faut pouvoir réduire le code PHP à son strict minimum


Décrivez votre astuce en détail. N'hésitez-pas à inclure des portions de codes.
seuil_stocks
initial_visible
initial_visiblepro


La commande est simple et fonctionne sur deux caractères clefs :
"?" et ":"
signifiant "alors" et "sinon"

exemple
$a = $var==true ? 1 : 0;
(si var est vrai, a=1 sinon a=0)

En poussant le vice, on arrive rapidement à des structures unilignes assez complexes :

$visible = $tous_visibles==true ? 'oui' : ( $celui_la==true ? 'oui' : ( isset($celui_la)?'oui':'non' ) ) ;

correspondant à
if($tous_visibles==true)
{
$visible='oui';
}
else
{
if($celui_la==true)
{
$visible='oui';
}
else
{
if(isset($celui_la))
{
$visible='oui';
}
else
{
$visible='non';
}
}
}

Une ligne, qu'il faut surveiller sinon elle devient incommentable.

Ceci étant pour en revenir à mon sujet initial. Une fois le principe compris, on peut très facilement faire des conditions dans notre code HTML...


Publié le 03 octobre 2007

Flo
Simplement, il n'y a pas d'opérateur "ou" dans le HTML.
$visible = ($var == a ou b ou c ? "oui" : "non").
Ca me semble plus simple, plus lisible et à mon avis, plus efficace à l'exécution
11 contributions : 1 2 3 4 5 6 7 8 9 10 11
 




 

© Benchmark Group, 69-71 avenue Pierre Grenier 92517 BOULOGNE BILLANCOURT Cedex

RECHERCHER