fn / function
Les fonctions fn() et function() sont des alias qui permettent d'appeler n'importe quelle fonction PHP directement depuis vos templates Twig.
Utilisation
{{ fn(nom_de_la_fonction, argument1, argument2, ...) }} {{ function(nom_de_la_fonction, argument1, argument2, ...) }}
Exemples
Appel simple
{{ fn('strtoupper', 'texte en majuscules') }} {# Affiche : TEXTE EN MAJUSCULES #}
Appel avec des arguments multiples
{{ fn('substr', 'Bonjour le monde', 0, 7) }} {# Affiche : Bonjour #}
Appel avec un tableau associatif
{{ fn('json_encode', { 'name': 'John', 'age': 30, 'active': true }) }} {# Affiche : {"name":"John","age":30,"active":true} #}
Paramètres
| Paramètre | Type | Description |
|---|---|---|
| name | string | Requis Nom de la fonction PHP à appeler. Peut être une fonction native de PHP ou une fonction personnalisée. |
| ...args | mixed | Optionnel Arguments à passer à la fonction. Le nombre d'arguments dépend de la fonction appelée. |
Bonnes pratiques
- Utilisez cette fonction avec parcimonie pour maintenir la séparation entre la logique et l'affichage.
- Privilégiez les filtres et fonctions Twig natifs lorsque c'est possible
Remarque
Les fonctions fn() et function() sont des alias et sont strictement équivalentes. Vous pouvez utiliser celle que vous préférez.
{{ fn('date', 'Y-m-d H:i:s') }} {# Est équivalent à : #} {{ function('date', 'Y-m-d H:i:s') }}
Sécurité
- Soyez prudent lors de l'appel de fonctions qui acceptent des entrées utilisateur non validées
- Évitez d'utiliser cette fonction pour appeler des fonctions qui pourraient présenter des risques de sécurité (comme
exec,system, etc.)