Aller au contenu principal
Version: 26.0.8.0

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ètreTypeDescription
namestringRequis Nom de la fonction PHP à appeler. Peut être une fonction native de PHP ou une fonction personnalisée.
...argsmixedOptionnel 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.)