{if},{elseif},{else}
L'instruction {if} dans Smarty dispose de la même flexibilité que l'instruction
PHP if,
avec quelques fonctionnalités supplémentaires pour le
moteur de template. Tous les {if} doivent être
utilisés de pair avec un {/if}.
{else} et {elseif} sont également
des balises autorisées. Toutes les conditions PHP sont reconnues,
comme ||, or,
&&, and, etc.
La liste suivante présente les opérateurs reconnus, qui doivent être entourés d'espaces.
Remarquez que les éléments listés entre [crochets] sont optionnels. Les équivalents
PHP sont indiqués lorsque applicables.
Opérateur
Syntaxe alternative
Exemple de syntaxe
Signification
Equivalent PHP
==
eq
$a eq $b
égalité
==
!=
ne, neq
$a neq $b
différence
!=
>
gt
$a gt $b
supérieur à
>
<
lt
$a lt $b
inférieur à
<
>=
gte, ge
$a ge $b
supérieur ou égal à
>=
<=
lte, le
$a le $b
inférieur ou égal à
<=
===
$a === 0
égalité (type et valeur)
===
!
not
not $a
négation
!
%
mod
$a mod $b
modulo
%
is [not] div by
$a is not div by 4
divisible par
$a % $b == 0
is [not] even
$a is not even
est [ou non] un nombre pair
$a % 2 == 0
is [not] even by
$a is not even by $b
paritée de groupe
($a / $b) % 2 == 0
is [not] odd
$a is not odd
est [ou non] un nombre impair
$a % 2 != 0
is [not] odd by
$a is not odd by $b
est [ou non] un groupe impair
($a / $b) % 2 != 0
Instruction {if}
1000 ) and $volume >= #minVolAmt#}
...
{/if}
{* vous pouvez également faire appel aux fonctions PHP *}
{if count($var) gt 0}
...
{/if}
{* teste si les valeurs sont paires(even) ou impaires(odd) *}
{if $var is even}
...
{/if}
{if $var is odd}
...
{/if}
{if $var is not odd}
...
{/if}
{* teste si la variable est divisible par 4 *}
{if $var is div by 4}
...
{/if}
{* teste si la variable est paire, par groupe de deux i.e.,
0=paire, 1=paire, 2=impaire, 3=impaire, 4=paire, 5=paire, etc. *}
{if $var is even by 2}
...
{/if}
{* 0=paire, 1=paire, 2=paire, 3=impaire, 4=impaire, 5=impaire, etc. *}
{if $var is even by 3}
...
{/if}
]]>