Variables insérées dans des chaînes de caractères
Smarty est capable d'interpréter les
variables assignées à l'intérieur de
chaînes entre guillemets, du moment que leur nom est exclusivement composé
de chiffres, lettres, underscores et crochets. Si le nom de la variable
contient tout autre caractère (point, référence à un objet, etc.)
la variable doit être entourée d'apostrophes inverses (`). Vous ne pouvez jamais
insérer de modifieurs, ils doivent toujours être appliquer à
l'extérieur des guillemets.
Exemple 3-5. Syntaxe d'insertion de variables dans des chaînes EXEMPLE DE SYNTAXE :
{func var="test $foo test"} <-- comprends $foo
{func var="test $foo_bar test"} <-- comprends $foo_bar
{func var="test $foo[0] test"} <-- comprends $foo[0]
{func var="test $foo[bar] test"} <-- comprends $foo[bar]
{func var="test $foo.bar test"} <-- comprends $foo (not $foo.bar)
{func var="test `$foo.bar` test"} <-- comprends $foo.bar
{func var="test `$foo.bar` test"|escape} <-- modifieurs à l'extérieur des guillemets !
EXEMPLE PRATIQUE:
{include file="subdir/$tpl_name.tpl"} <-- remplace $tpl_name avec la valeur
{cycle values="one,two,`$smarty.config.myval`"} <-- doit comporter les apostrophes inverses |
|
Voir aussi
escape.