[précédent]

Les Modifiers des templates

Les modifiers permettent de modifier une variable avant de l’afficher. Voici les différents modifiers que vous pourrez utiliser dans vos templates.

{$test|capitalize}

permet de mettre chaque première lettre des mots en majuscule

{$test|capitalize:true}

Le premier paramètre permet de définir si on transforme ou non les mots qui ont un caractère numérique comme par exemple php5.

{$test|capitalize:true:true}

Le deuxième paramètre permet de définir si tous les autres caractères sont transformés en caractères minuscules.

{$test|cat:' ajouté du texte'}

permet de mettre chaque première lettre des mots en majuscule

{$test|count_characters}

permet de compter le nombre de caractères sauf les espaces

{$test|count_characters:true}

permet de compter le nombre de caractères avec les espaces

{$test|count_paragraphs}

permet de compter le nombre de paragraphes

{$test|count_sentences}

permet de compter le nombre de parties séparées par des ., ?, !.

{$test|date_format}

Affiche une date sous la forme : Mon, 19 May 2014 17:42:51

{$test|date_format:'%b %e, %Y'}

Formater sa date (voir en php strftime). %h devient %b, %n devient \n, %r devient %I:%M:%S %p, %R devient %H:%M, %t devient \t et %T devient %H:%M:%S.

{$test|default:'texte par défaut'}

permet d’afficher un texte par défaut si la variable est vide ou null.

{$test|escape}

permet d’échapper selon différents critères désirés : html, htmlall, url, urlpathinfo, quotes, javascript.

{$test|escape:'url'}
{$test|escape:'html':'UTF-8'}
{$test|from_charset}

permet d’encoder du charset ISO-8859-1 au charset actuel

{$test|from_charset:' ISO-8859-1'}

Permet d’encoder du charset precisé au charset actuel

{$test|hour}

permet d’afficher que 17:12 quand on met 2014-05-05 17:12:30

{$test|indent}

permet d’indenter du texte (en HTML il faut mettre des balises <bloquote>) de 4 espaces

{$test|indent:4}
{$test|indent:4:' '}
Voici les paramètres si vous désirez les changer.

{$test|regex_replace:'/oui/':'non'}

Remplacer les oui par non par expression régulière

{$test|replace:'oui':'non'}

Remplacer les oui par non comme un simple str_replace

{$test|spacify}

Sépare chaque mot par un espace

{$test|spacify:'^^'}
Sépare chaque mot de ^^

{$test|string_format:'%d'}

Transformer une chaîne ou un chiffre sous le format désiré (voir sprintf en PHP pour les formats)

{$test|strip}

Remplace tous les caractères d’espacement en simple espace pour les formats)

{$test|strip:' '}
Remplace tous les caractères d’espacement en  

{$test|strip_tag}

Remplace toutes les balises par un espace pour les formats)
{$test|strip:false}
Remplace toutes les balises par rien

{$test|nl2br}

permet de transformer les \n en <br/>

{$test|to_charset}

permet d’encoder du charset actuel au charset ISO-8859-1
{$test|to_charset:' ISO-8859-1'}
Permet d’encoder du charset actuel au charset precisé

{$test|truncate}

permet de couper les phrases à X caractères
{$test|truncate:30:'…':false:false}
Les paramètres permettre successivement de choisir le nombre de caractère avant de couper le contenu, ensuite de décider ce qu’on ajoute après le contenu comme les 3 points, ensuite on détermine si on coupe après le dernier mot ou directement au caractère 30 et le dernier paramètre permet de définir si on coupe en prenant le milieu de la chaîne de caractère en référence et non le début de la chaine.
{$test|unescape}
permet d’échapper selon différents critères désirés : html, htmlall
{$test|unescape:'html'}
{$test|unescape:'html':'UTF-8'}

{$test|lower}

permet de mettre toutes les lettres en minuscule

{$test|upper}

permet de mettre toutes les lettres en majuscule

{$test|wordwrap}

permet d’aller à la ligne tous les 75 caractères.
{$test|wordwrap:30:'<br/>':true}
Permet de mettre des
pour aller à la ligne en HTML tous les 30 caractères et au caractère exact (et non après le dernier mot en mettant false).

[suivant]