smarty template engine
Thursday, July 29, 2010  
download | documentation | faq | forum | mailing lists | changelog | contribs 


Translate this page to:
search for in the


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.

OperatoreAlternativeEsempio di sintassiSignificatoEquivalente PHP
==eq$a eq $buguale==
!=ne, neq$a neq $bdiverso!=
>gt$a gt $bmaggiore di>
<lt$a lt $bminore di<
>=gte, ge$a ge $bmaggiore o uguale>=
<=lte, le$a le $bminore o uguale<=
!notnot $anegazione (unario)!
%mod$a mod $bmodulo (resto della divisione)%
is [not] div by $a is not div by 4divisibile 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 $blivello 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 $blivello di raggruppamento [non] dispari($a / $b) % 2 != 0

Esempio 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}


[advertise]


credits 

Smarty Copyright © 2002-2008
New Digital Group, Inc.

All rights reserved.