smarty boite à outils
Smarty est un moteur de template vraiment complet. Il offre en effet un pannel de fonction bien utile.
Dans ce tutoriel nous allons voir les trucs et astuces connus et méconnus de smarty.
Accéder aux variables globales
Nous allons voir ici comment accéder aux constantes smarty très simplement.
Les constantes
Nous avons définis une constante comme ceci :
define('WEB', 'http://www.waanser.com');
Pour accéder à cette session avec smarty il faut faire appel à {$smarty.const.[nom de la constante]}
cela donne :
{$smarty.const.WEB}
Accéder aux sessions
Pour accéder aux sessions c’est un peu près la même méthode :
$_SESSION['waanser']['url']='www.waanser.com';
En smarty on y accède comme cela :
$smarty.session. waanser. url
Les tableaux et smarty
Vous l’avez certainement remarqué avec les sessions, l’accès aux données du tableau ce fait avec le point.
$aEcole =
array('2007'=>
array(
'CM2' => array('Marc', 'Maude', 'Sophie'),
'CM1' => array('Roul', 'Tilkc', 'Pauline')
),
'2008'=>
array(
'CM2' => array('Roul', 'Tilkc', 'Pauline'),
'CM1' => array('Henry', 'Manon', 'Dedeweb','Laure')
)
);
Dans cet exemple, si l’on veut accéder aux deuxième élève de la classe de CM2 à l’année 2008 on va saisir :
{$aEcole.2008.CM2.1}
Parcourir un tableau avec la boucle foreach
Pour parcourir ce tableau nous allons utiliser la fonction foreach de smarty.
{foreach from=NOM DU TABLEAU item=INDICE key=CLE}
L’attribut item et key ne sont pas obligatoires.
Ci-dessous l’exemple de code qui parcourt tout le tableau aEcole :
{foreach from=$aEcole item=aAnnee key=sAnnee}
{$sAnnee} : <br/>
{foreach from=$aAnnee item=aClasse key=sClasse}
<ul><li>{$sClasse}
{foreach from=$aClasse item=sEleve}
<ul><li>{$sEleve}</li></ul>
{/foreach}
</li></ul>
{/foreach}
{/foreach}
Un compteur avec smarty
Si vous avez besoin de mettre un compteur dans votre page, smarty offre la possibilité d’utiliser des compteurs avec la fonction {counter}
{counter name=NOM DU COMPTEUR start=POSITION DE DEPART skip=INCREMENT assign=VARIABLE ASSIGNE}
Dans notre exemple, nous allons afficher le nombre d’élève pour chaque classe.
{foreach from=$aEcole item=aAnnee key=sAnnee}
{$sAnnee} : <br/>
{foreach from=$aAnnee item=aClasse key=sClasse}
<ul><li>{$sClasse}
{counter name=cCompt start=0 skip=1 assign=iNbEleve}
{foreach from=$aClasse item=sEleve}
{counter name=cCompt}
<ul><li>{$sEleve}</li></ul>
{/foreach}
<ul>nombre d'élève : {$iNbEleve}</ul>
</li></ul>
{/foreach}
{/foreach}
Comme vous le voyez à chaque fois que l’on fait appel à {counter name=cCompt} le compteur va s’incrémenter de 1.
Voila, vous connaissez les fonctions essentielles de smarty.



(4 votes, moyenne: 3,25 max : 5)
octobre 30th, 2010 at 17 h 34 min
merci pour l’article c’est vraiment utilise pour les débutants en Smarty
octobre 30th, 2010 at 17 h 37 min
EDIT:merci pour l’article c’est vraiment utile pour les débutants en Smarty