request
La variable globale request fournit un accès aux informations de la requête HTTP actuelle. Cette variable est automatiquement disponible dans tous vos templates Twig.
Propriétés disponibles
| Propriété | Type | Description |
|---|---|---|
| method | string | Méthode HTTP de la requête (GET, POST, etc.) |
| query | array | Paramètres de la chaîne de requête (GET) |
| post | array | Données envoyées en POST |
| get | array | Alias de query |
| cookie | array | Cookies de la requête |
| files | array | Fichiers envoyés dans la requête |
Exemples d'utilisation
Vérifier la méthode HTTP
{% if request.method == 'POST' %} {-- Traitement du formulaire --} {{ request.post.username }} a été soumis ! {% endif %}
Accéder aux paramètres de requête
{% if request.query.search is defined %} <p>Résultats de recherche pour : {{ request.query.search|e }}</p> {% endif %}
Vérifier si c'est une requête AJAX
{% if request.ajax %} {-- Inclure uniquement le contenu nécessaire pour une requête AJAX --} {% include 'partials/search-results.twig' %} {% else %} {-- Inclure le layout complet pour une requête normale --} {% extends 'base.html.twig' %} {% endif %}
Récupérer l'URL courante
<p>Vous visitez actuellement : {{ request.fullPath }}</p>
Bonnes pratiques
- Toujours échapper les données utilisateur avec le filtre
|e - Ne pas traiter des données directement dans les templates
- Privilégier la validation côté contrôleur
Remarque
Cette variable est en lecture seule. Pour modifier les données de la requête, vous devez le faire dans le contrôleur avant de rendre le template.