Qual é a diferença entre!,% E @ nos tokens de substituição?

15

Estou usando o módulo Message no Drupal 7. Para tokens de substituição , o texto da ajuda diz:

Uma lista separada por vírgula de tokens de substituição, por exemplo,% title ou! Url, dos quais o texto da mensagem faz uso. Cada token de substituição deve começar com um dos caracteres especiais "@", "%" ou "!". Esse caractere controla o método de higienização usado, analogamente à função t ().

Qual é a diferença entre%,! E @? Existem padrões sobre quando devo usar cada símbolo?

Patrick Kenny
fonte

Respostas:

20

Dos format_string()documentos:

  • @ variável : Escapou para HTML usando check_plain(). Use isso como a opção padrão para qualquer coisa exibida em uma página no site.
  • Variável% : adaptada para HTML e formatada usando drupal_placeholder(), o que a exibe como texto enfatizado .
  • Variável!: inserida como está, sem higienização ou formatação. Use apenas isso para texto que já foi preparado para exibição em HTML (por exemplo, texto fornecido pelo usuário que já foi executado check_plain()anteriormente ou que deve conter algumas tags HTML limitadas e que já foi executado filter_xss()anteriormente).
Clive
fonte