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:
Les variables de template commence par un signe dollar ($
).
Elles peuvent contenir des nombres, des lettres et des underscores, tout
comme une variable PHP.
Vous pouvez référencer des tableaux indexés
numériquement ou non. Vous pouvez aussi référencer des propriétés d'objet
ainsi que des méthodes.
Les variables des fichiers de
configuration sont une exception à la synthaxe utilisant un signe dollar. Elles peuvent être
référencées en les entourant du signe dièse (#
) ou via la variable spéciale
$smarty.config
.
Example 3.2. Variables
{$foo} <-- affiche une variable simple (qui n'estpas un tableau ou un objet) {$foo[4]} <-- affiche le 5ème élément d'un tableau indexé {$foo.bar} <-- affiche la clé "bar" d'un tableau, identique à $foo['bar'] en PHP {$foo.$bar} <-- affiche la valeur de la clé d'un tableau, identique à $foo[$bar] en PHP {$foo->bar} <-- affiche la propriété "bar" de l'objet {$foo->bar()} <-- affiche la valeur retournée de la méthode "bar" de l'objet {#foo#} <-- affiche la variable du fichier de configuration "foo" {$smarty.config.foo} <-- synonyme pour {#foo#} {$foo[bar]} <-- synthaxe uniquement valide dans une section de boucle, voir {section} {assign var=foo value='baa'}{$foo} <-- affiche "baa", voir {assign} Plusieurs autres combinaisons sont autorisées {$foo.bar.baz} {$foo.$bar.$baz} {$foo[4].baz} {$foo[4].$baz} {$foo.bar.baz[4]} {$foo->bar($baz,2,$bar)} <-- passage de paramètres {"foo"} <-- les valeurs statiques sont autorisées {* affiche la variable serveur "SERVER_NAME" ($_SERVER['SERVER_NAME'])*} {$smarty.server.SERVER_NAME}
Les variables spéciales comme $_GET
, $_SESSION
, etc.
sont également disponibles, lisez le chapitre sur les variables réservées
$smarty
pour plus de détails.
Voir aussi
$smarty
,
les variables de configuration,
{assign}
et
assign()
.