{if},{elseif},{else}
Pernyataan {if} dalam Smarty memiliki kesamaan fleksibilitas seperti pernyataan PHP if, dengan beberapa fitur yang ditambahkan untuk mesin template. Setiap {if} harus dipasangkan dengan {/if} yang sama. {else} dan {elseif} juga dibolehkan. Semua kondisional dan fungsi PHP dikenal, seperti ||, or, &&, and, is_array(), dll.
Jika $security dihidupkan, hanya fungsi PHP dari array IF_FUNCS dari $security_settings yang dibolehkan.
Berikut adalah daftar kualifikator yang dikenal yang harus dipisahkan dari elemen yang dikelilingi oleh spasi. Catatan bahwa item terdaftar dalam [kurung] adalah opsional. Persamaan PHP ditampilkan bila memungkinkan.
| Kualifikator | Pembeda | Contoh Sintaks | Arti | Persamaan PHP |
|---|---|---|---|---|
| == | eq | $a eq $b | sama | == |
| != | ne, neq | $a neq $b | tidak sama | != |
| > | gt | $a gt $b | lebih besar dari | > |
| < | lt | $a lt $b | kurang dari | < |
| >= | gte, ge | $a ge $b | lebih besar atau sama | >= |
| <= | lte, le | $a le $b | kurang dari atau sama | <= |
| === | $a === 0 | periksa identitas | === | |
| ! | not | not $a | negasi (unari) | ! |
| % | mod | $a mod $b | modulus | % |
| is [not] div by | $a is not div by 4 | bisa dibagi dengan | $a % $b == 0 | |
| is [not] even | $a is not even | [bukan] angka genap (unari) | $a % 2 == 0 | |
| is [not] even by | $a is not even by $b | tingkat pengelompokan [bukan] genap | ($a / $b) % 2 == 0 | |
| is [not] odd | $a is not odd | [bukan] angka ganjil (unari) | $a % 2 != 0 | |
| is [not] odd by | $a is not odd by $b | [bukan] pengelompokan ganjil | ($a / $b) % 2 != 0 |
