foreach,foreachelse
Nom attribut
Type
Requis
Defaut
Description
from
tableau
oui
n/a
Le tableau à parcourir
item
chaîne de caractère
Oui
n/a
Le nom de la variable "élément courant"
key
chaîne de caractère
Non
n/a
Le nom de la variable représentant la clef courante.
name
chaîne de caractère
Non
n/a
Le nom de la boucle foreach, qui nous permettra
d'accéder à ses propriétés.
Les boucles foreach sont une alternative aux boucles
section. Les boucles foreach
sont utilisées pour parcourir des tableaux associatifs simples.
La syntaxe des boucles foreach est bien plus simple
que celle des boucles section, mais en contrepartie,
elles ne peuvent être utilisées que pour des tableaux associatifs simples.
La balise foreach doit toujours être accompagnée
de la balise /foreach. Les paramètres requis sont
from et item. Le nom des boucles
foreach doit être composés exclusivement de lettres,
chiffres et underscores, selon vos préférences. Les boucles
foreach peuvent être imbriquées.
La variable from (généralement le tableau à
parcourir) détermine le nombre de fois que foreach
sera exécuté. foreachelse est exécuté si aucune
valeur n'est présente dans la variable donnée à l'attribut
from.
foreach
{* Cet exemple affiche toutes les valeurs du tableau $custid *}
{foreach from=$custid item=curr_id}
id: {$curr_id}<br>
{/foreach}
SORTIE:
id: 1000<br>
id: 1001<br>
id: 1002<br>
foreach key
{* key contient la clef de chaque élément parcouru
l'attribution des élément est de la forme:
$smarty->assign("contacts", array(array("tel" => "1", "fax" => "2", "portable" => "3"),
array("tel" => "555-4444", "fax" => "555-3333", "portable" => "760-1234")));
*}
{foreach name=outer item=contact from=$contacts}
{foreach key=key item=item from=$contact}
{$key}: {$item}<br>
{/foreach}
{/foreach}
SORTIE:
tel: 1<br>
fax: 2<br>
portable: 3<br>
tel: 555-4444<br>
fax: 555-3333<br>
portable: 760-1234<br>