What is Smarty?
Why use it?
Use Cases and Work Flow
Syntax Comparison
Template Inheritance
Best Practices
Crash Course
You may use the Smarty logo according to the trademark notice.
For sponsorship, advertising, news or other inquiries, contact us at:
{cycle}
est utilisé pour boucler sur un ensemble de valeurs.
Très pratique pour alterner entre deux ou plusieurs couleurs dans un tableau,
ou plus généralement pour boucler sur les valeurs d'un tableau.
Nom attribut | Type | Requis | Defaut | Description |
---|---|---|---|---|
name | chaîne de caractères | Non | default | Le nom du cycle |
values | divers | Oui | N/A | Les valeurs sur lesquelles boucler, soit une liste séparée par des virgules, (voir l'attribut delimiter), soit un tableau de valeurs |
booléen | Non | TRUE |
S'il faut afficher ou non cette valeur | |
advance | booléen | Non | TRUE |
Oui ou non aller à la prochaîne valeur |
delimiter | chaîne de caractères | Non | , | Le délimiteur à utiliser dans la liste. |
assign | chaîne de caractères | Non | n/a | La variable de template dans laquelle la sortie sera assignée |
reset | booléen | Non | FALSE |
Le cycle sera défini à la première valeur |
Vous pouvez définir plusieurs {cycle}
dans votre template, en leur
donnant des noms uniques (attribut name
).
Vous pouvez empêcher la valeur courante de s'afficher en définissant
l'attribut print
à FALSE
. Ce procédé peut être
utile pour discrètement passer outre une valeur de la liste.
L'attribut advance
est utilisé pour répéter une valeur. Lorsque
définit à FALSE
, le prochain appel de {cycle}
ramènera la même valeur.
Si vous définissez l'attribut spécial assign
, la sortie de la fonction
{cycle}
y sera assignée plutôt que d'être directement affichée.
Example 8.5. {cycle}
{section name=rows loop=$data} <tr bgcolor="{cycle values="#eeeeee,#d0d0d0"}"> <td>{$data[rows]}</td> </tr> {/section}
Le template ci-dessus affichera :
<tr bgcolor="#eeeeee"> <td>1</td> </tr> <tr bgcolor="#d0d0d0"> <td>2</td> </tr> <tr bgcolor="#eeeeee"> <td>3</td> </tr>