替换令牌中的!,%和@有什么区别?


15

我正在Drupal 7上使用消息模块。对于替换令牌,帮助文本显示:

逗号分隔的替换令牌列表,例如%title或!url,消息文本使用这些替换令牌。每个替换令牌必须以特殊字符“ @”,“%”或“!”之一开头。与t()函数类似,此字符控制使用的消毒方法。

%、!和@之间有什么区别?关于何时应该使用每个符号有标准吗?

Answers:


20

format_string()文档:

  • @variable:使用转换为HTML check_plain()。使用此选项作为网站页面上显示的所有内容的默认选项。
  • %variable:转义为HTML并使用格式化drupal_placeholder(),使其显示为强调文本。
  • !variable:按原样插入,没有任何清理或格式化。仅将其用于已经准备好用于HTML显示的文本(例如,check_plain()以前已经运行过的用户提供的文本,或者应该包含一些有限的HTML标记并且以前已经运行过的用户提供的文本filter_xss())。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.