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

Chapter 4. Variables

Smarty possède différents types de variables. Le type de ces variables dépend du symbole qui les préfixe, ou des symboles qui les entourent.

Les variables de Smarty peuvent être soit affichées directement, soit utilisées comme arguments pour les fonctions et modificateurs, à l'intérieur d'expressions conditionnelles, etc. Pour afficher une variable, il suffit de l'entourer par des délimiteurs de telle sorte qu'elle soit la seule chose qu'ils contiennent.

Example 4.1. Exemple de variables


{$Nom}

{$Contacts[enreg].Telephone}

<body bgcolor="{#bgcolor#}">


Astuce

La façon de la simple d'analyser les variables Smarty est d'utiliser la console de débogage.

Variables assignées depuis PHP

Pour utiliser une variables assignées depuis PHP, il faut la préfixer par le symbole dollar $. Les variables asignées depuis un template grâce à la fonction {assign} sont manipulées de la même façon.

Example 4.2. Variables assignées

Script PHP


<?php

$smarty = new Smarty;

$smarty->assign('firstname', 'Doug');
$smarty->assign('lastname', 'Evans');
$smarty->assign('meetingPlace', 'New York');

$smarty->display('index.tpl');

?>

   

index.tpl est :


Bonjour {$firstname} {$lastname}, heureux de voir que tu es arrivé ici.
<br />
{* ceci ne fonctionnera pas car $vars est sensible à la casse *}
Cette semaine, le meeting est à {$meetingplace}.
{* ceci fonctionnera *}
Cette semaine, le meeting est à {$meetingPlace}.

   

Affichera :


Bienvenue Doug, heureux de voir que tu es arrivé ici.
<br />
Cette semaine, le meeting est à .
Cette semaine, le meeting est à New York.

  

Tableaux associatifs

Vous pouvez également utiliser des variables sous forme de tableaux associatifs assignées depuis PHP en en spécifiant la clef, après le symbole '.' (point).

Example 4.3. Accéder aux variables de tableaux associatifs


<?php

$smarty->assign('Contacts',
    array('fax' => '555-222-9876',
          'email' => 'zaphod@slartibartfast.example.com',
          'phone' => array('home' => '555-444-3333',
                           'cell' => '555-111-1234')
                           )
           );
$smarty->display('index.tpl');
?>

   

index.tpl est :


{$Contacts.fax}<br />
{$Contacts.email}<br />
{* vous pouvez afficher des tableaux de tableaux *}
{$Contacts.phone.home}<br />
{$Contacts.phone.cell}<br />

   

Affichera :


555-222-9876<br />
zaphod@slartibartfast.example.com<br />
555-444-3333<br />
555-111-1234<br />

   

Tableaux indexés

Vous pouvez utiliser des tableaux indexés de la même façon que vous le faites en PHP.

Example 4.4. Accès aux tableaux grâce à l'index


<?php
$smarty->assign('Contacts', array(
                     '555-222-9876',
                     'zaphod@slartibartfast.example.com',
                       array('555-444-3333',
                            '555-111-1234')
                        ));
$smarty->display('index.tpl');
?>

   

index.tpl est :


{$Contacts[0]}<br />
{$Contacts[1]}<br />
{* Vous pouvez également afficher des tableaux *}
{$Contacts[2][0]}<br />
{$Contacts[2][1]}<br />

   

Affichera :


555-222-9876<br />
zaphod@slartibartfast.example.com<br />
555-444-3333<br />
555-111-1234<br />

   

Objets

Les attributs des objets assignés depuis PHP peuvent être utilisées en en spécifiant le nom après le symbole ->.

Example 4.5. Accéder aux attributs des objets


nom: {$person->name}<br />
email: {$person->email}<br />

   

Affichera :


nom: Zaphod Beeblebrox<br />
email: zaphod@slartibartfast.example.com<br />

   

Comments
No comments for this page.

Advertisement

Sponsors [info]

Sponsors