1、escape
:这是默认的过滤器,用于防止跨站脚本攻击(XSS)。它会转义所有可能的 HTML 标签,以确保输出的内容是安全的。例如:{{ content|escape }}
。
2、raw
:这个过滤器会禁止转义,输出原始的 HTML。这个过滤器应该谨慎使用,因为它可能导致 XSS 攻击。例如,{{ content|raw }}
。
3、t
:这个过滤器用于翻译字符串。例如,{{ 'Hello, world!'|t }}
4、date
:这个过滤器用于格式化日期。例如,{{ node.created.value|date('m/d/Y') }}
。
5、length
:这个过滤器用于获取字符串的长度或数组的元素个数。例如,{{ content|length }}
。
6、url
:这个过滤器用于生成 URL。例如,{{ path('entity.node.canonical', {'node': node.id})|url }}
。
7、without
:这个过滤器用于从渲染数组中移除特定的元素。例如,{{ content|without('field_example') }}
。
8、join
:这个过滤器用于将数组元素连接成一个字符串。例如,{{ items|join(', ') }}
。
9、default
:这个过滤器用于提供一个默认值,当变量不存在或为 null 时使用。例如,{{ content|default('No content provided') }}
。
10、lower
和 upper
:这两个过滤器用于将字符串转换为小写或大写。例如,{{ 'Hello'|lower }}
或 {{ 'Hello'|upper }}
。
11、replace
:替换字符串中的一部分。例如,{{ 'I like apples.'|replace({'apples': 'bananas'}) }}
12、number_format
:格式化数字。例如,{{ 12345.6789|number_format(2, '.', ',') }}
,数字 12345.6789
会被格式化为 12,345.68
,因为我们设置了小数位数为 2
,小数点字符为 .
,千位分隔符为 ,
。