Backend PHP (BPH) Help

Utiliser le moteur de templates Twig

Nous avons installé Twig mais à quoi ça va nous servir exactement ?

Twig est un moteur de template, il s'occupe donc plutôt de la partie affichage et dynamisation des views. Il va nous servir à remplacer les echo et les <?= ?> dans nos templates, ainsi que nos boucles et conditions par une syntaxe plus souple et plus lisible.

Afficher une variable avec Twig

Twig utilise une syntaxe que vous vous connaissez peut-être déjà : celle des {{ }}.

Habituellement quand vous voulez afficher une variable, vous faites :

<?php $test = "Test"; ?> <h1><?php echo $test?></h1>

En Twig <?php echo $test?> est remplacé par {{ }}:

<h1>{{ test }}</h1>

Les conditions dans Twig

Une condition dans un fichier .phtml:

<?php if($name) { ?> <h1>Hello <?= $name; ?></h1> <?php } else { ?> <h1>Hello you</h1> <?php }

en Twig :

{% if name %} <h1>Hello {{ name }}</h1> {% else %} <h1>Hello you</h1> {% endif %}

Les boucles dans Twig

Pour faire une boucle habituellement, vous faites :

<?php foreach($users as $user) { ?> <li><?= $user; ?></li> <?php }

en Twig :

{% for user in users %} <li>{{ user }}</li> {% endfor %}

L'héritage

Dans Twig les templates peuvent hériter les uns des autres. Imaginons que vous avez un template layout.html.twig:

exemple 1 Twig

et un template home.html.twig:

exemple 2 Twig

home hérite de layout et complète son bloc title mais remplace son block content.

Le HTML généré ressemblera donc à :

<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title> Ma page | Le nom de mon site </title> </head> <body> <h1>Accueil</h1> </body> </html>

Twig propose énormément de librairies et formes syntaxiques que vous pouvez retrouver dans la documentation officielle : Twig documentation.

08 December 2025