Source : Manuel PHP : Opérateurs de comparaison et Manuel PHP : Les opérateurs logiques.
1 2 |
<div tal:attributes="class php:(condition)?'.retourne-true':'.retourne-false'"> <div tal:attributes="class php:(stores)?'results storelocator-search no-background':'no-results storelocator-search'"> |
1 |
<div tal:attributes="class php:(stores)?'results storelocator-search no-background':'no-results storelocator-search'"> |
Faire (stores)
c’est le raccourci de (stores == true)
et faire (!stores)
c’est le raccourci de (stores != true)
ou (stores == false)
.
1 |
<div tal:attributes="class php:(stores || noSearch)?'results storelocator-search no-background':'no-results storelocator-search'"> |
Si stores
répond true OU noSearch répond true, tu auras no-background. Donc si stores
répond false et noSearch répond true, tu auras no-background. Il suffit que l’un des deux réponde true.
1 |
<div tal:attributes="class php:(stores || !noSearch)?'storelocator-search no-background-image':'storelocator-search'"> |
En gros, quand tu mets le !
ça veut dire contraire, donc si tu mets !false
ça fera true
et le premier argument après le ?
est exécuté si ce qu’il y a dans les parenthèses vaut true.