Get Smarty

Donate

Paypal

Smarty Icon

You may use the Smarty logo according to the trademark notice.

Smarty Template Engine Smarty Template Engine

For sponsorship, advertising, news or other inquiries, contact us at:

Sites Using Smarty

Advertisement

if,elseif,else

Le istruzioni {if} in Smarty hanno praticamente la stessa flessibilità delle istruzioni if PHP, con qualche caratteristica aggiuntiva per il motore di template. Ogni {if} deve essere chiuso con un {/if}. Sono previsti anche {else} e {elseif}. Sono riconosciuti tutti gli operatori condizionali di PHP, come ||, or, &&, and, ecc.

Quella che segue è una lista degli operatori riconosciuti, che devono essere separati con degli spazi dagli elementi circostanti. Notate che gli elementi mostrati fra [parentesi quadre] sono opzionali. Quando esistono sono mostrati gli equivalenti in PHP.

Operatore Alternative Esempio di sintassi Significato Equivalente PHP
== eq $a eq $b uguale ==
!= ne, neq $a neq $b diverso !=
> gt $a gt $b maggiore di >
< lt $a lt $b minore di <
>= gte, ge $a ge $b maggiore o uguale >=
<= lte, le $a le $b minore o uguale <=
! not not $a negazione (unario) !
% mod $a mod $b modulo (resto della divisione) %
is [not] div by   $a is not div by 4 divisibile per $a % $b == 0
is [not] even   $a is not even [non] è un numero pari (unario) $a % 2 == 0
is [not] even by   $a is not even by $b livello di raggruppamento [non] pari ($a / $b) % 2 == 0
is [not] odd   $a is not odd [non] è un numero dispari (unario) $a % 2 != 0
is [not] odd by   $a is not odd by $b livello di raggruppamento [non] dispari ($a / $b) % 2 != 0

Example 7.11. Istruzioni if

{if $name eq "Fred"}
	Welcome Sir.
{elseif $name eq "Wilma"}
	Welcome Ma'am.
{else}
	Welcome, whatever you are.
{/if}

{* un esempio con "or" logico *}
{if $name eq "Fred" or $name eq "Wilma"}
	...
{/if}

{* come sopra *}
{if $name == "Fred" || $name == "Wilma"}
	...
{/if}

{* questa sintassi NON funziona, gli operatori condizionali
   devono essere separati con spazi dagli elementi circostanti *}
{if $name=="Fred" || $name=="Wilma"}
	...
{/if}


{* si possono usare le parentesi *}
{if ( $amount < 0 or $amount > 1000 ) and $volume >= #minVolAmt#}
	...
{/if}

{* potete anche incorporare chiamate a funzioni php *}
{if count($var) gt 0}
	...
{/if}

{* test su valori pari o dispari *}
{if $var is even}
	...
{/if}
{if $var is odd}
	...
{/if}
{if $var is not odd}
	...
{/if}

{* test se var è divisibile per 4 *}
{if $var is div by 4}
	...
{/if}

{* test se var è pari, raggruppato per due. Ad es.:
0=pari, 1=pari, 2=dispari, 3=dispari, 4=pari, 5=pari, etc. *}
{if $var is even by 2}
	...
{/if}

{* 0=pari, 1=pari, 2=pari, 3=dispari, 4=dispari, 5=dispari, etc. *}
{if $var is even by 3}
	...
{/if}

Comments
No comments for this page.

Advertisement

Sponsors [info]

Sponsors