Outils pour utilisateurs

Outils du site


informatique:langages:php:twig

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
informatique:langages:php:twig [2025/01/02 09:28] – supprimée - modification externe (Date inconnue) 127.0.0.1informatique:langages:php:twig [2025/01/02 09:28] (Version actuelle) – ↷ Page déplacée de informatique:php:twig à informatique:langages:php:twig alexis
Ligne 1: Ligne 1:
 +====== TWIG ======
 +{{ :informatique:logo:twig.png?nolink&100|}}
 +C'est un moteur de templates pour le langage de programmation PHP, utilisé par défaut par le framework Symfony. 
 +
 +===== Traduction =====
 +  * traduction d'une variable
 +<WRAP prewrap>
 +<code twig>
 +{{ ma_variable | trans }}
 +</code>
 +</WRAP>
 +  * traduction d'une chaîne de caractères
 +<WRAP prewrap>
 +<code twig>
 +{% trans %}ma_chaine{% endtrans %}
 +</code>
 +</WRAP>
 +  * traduction d'une chaîne de caractères contenant une variable
 +<WRAP prewrap>
 +<code twig>
 +{% trans with {'variable': ma_variable} %}ma_chaine variable{% endtrans %}
 +</code>
 +</WRAP>
 +Attention, la variable est transmise à la chaîne traduite et ne sera donc pas elle même traduite.
 +  * traduction d'une chaîne de caractères variable
 +<WRAP prewrap>
 +<code twig>
 +{# Méthode en passant par une variable #}
 +{% set ma_nouvelle_variable = "ma_chaine" ~ ma_variable %}
 +{{ ma_nouvelle_variable | trans }}
 +{# Méthode directe #}
 +{{ ("ma_chaine" ~ ma_variable) | trans }}
 +</code>
 +</WRAP>
 +Attention, dans ce cas le contenu de la variable sera ajouté à la chaîne de caractères. C'est cette nouvelle chaîne de caractères qui sera traduite.
 +
 +===== Contrôle des espaces =====
 +Le contrôle des espaces permet de modifier le code généré en supprimant les espaces (espaces, tabulations, etc.) du code HTML généré. Il existe plusieurs syntaxes pour réaliser cela.
 +  * suppression des espaces d'un bloc
 +<WRAP prewrap>
 +<code twig>
 +{% spaceless %}
 +    <div>
 +        <strong>foo bar</strong>
 +    </div>
 +{% endspaceless %}
 +</code>
 +</WRAP>
 +  * suppression des espaces d'une balise TWIG
 +<WRAP prewrap>
 +<code twig>
 +{% set value = 'no spaces' %}
 +{#- No leading/trailing whitespace -#}
 +{%- if true -%}
 +    {{- value -}}
 +{%- endif -%}
 +{# output 'no spaces' #}
 +</code>
 +</WRAP>
 +
 +===== Fonctions utiles =====
 +  * affichage des informations d'une variable
 +<WRAP prewrap>
 +<code twig>
 +{{ dump(ma_variable) }}
 +</code>
 +</WRAP>
 +
 +===== Liens utiles =====
 +  * [[http://twig.sensiolabs.org/|Site officiel]]
 +  * [[http://twig.sensiolabs.org/pdf/Twig.pdf|Documentation officielle en pdf]]