Quelle est la différence entre!,% Et @ dans les jetons de remplacement?

15

J'utilise le module Message sur Drupal 7. Pour les jetons de remplacement , le texte d'aide dit:

Une liste de jetons de remplacement séparés par des virgules, par exemple% title ou! Url, dont le texte du message fait usage. Chaque jeton de remplacement doit commencer par l'un des caractères spéciaux "@", "%" ou "!". Ce caractère contrôle la méthode de désinfection utilisée, de manière analogue à la fonction t ().

Quelle est la différence entre%,! Et @? Existe-t-il des normes sur le moment où je dois utiliser chaque symbole?

Patrick Kenny
la source

Réponses:

20

De la format_string()documentation:

  • @variable : échappé au HTML à l'aide de check_plain(). Utilisez-le comme choix par défaut pour tout ce qui est affiché sur une page du site.
  • % variable : échappé au HTML et formaté à l'aide drupal_placeholder(), ce qui le rend affiché sous forme de texte souligné .
  • ! variable : inséré tel quel, sans nettoyage ni formatage. Utilisez-le uniquement pour le texte qui a déjà été préparé pour l'affichage HTML (par exemple, du texte fourni par l'utilisateur qui a déjà été parcouru check_plain()précédemment ou qui devrait contenir des balises HTML limitées et qui a déjà été parcouru filter_xss()précédemment).
Clive
la source