咨询Mailjet模板语言:字符串包含检查、数组元素添加及空数组判断方法
Mailjet模板语言操作实现方法
以下是你询问的三个操作的具体实现方式,基于Mailjet支持的Twig模板语法:
1. 检查变量是否包含特定字符串
使用Twig的in操作符判断目标字符串是否存在于变量中:
{% if '目标字符串' in 待检查变量 %} 变量包含目标字符串的执行逻辑 {% else %} 变量不包含目标字符串的执行逻辑 {% endif %}
示例:检查用户邮箱是否包含@gmail.com
{% if '@gmail.com' in user_email %} 您使用的是Gmail邮箱 {% else %} 您使用的是非Gmail邮箱 {% endif %}
2. 向数组中添加元素
使用merge过滤器合并数组,将新元素以数组形式传入即可完成添加(原数组不会被修改,需赋值给新变量):
{% set 更新后的数组 = 原数组|merge([新元素]) %}
示例:向产品数组中添加新商品
{% set original_products = ['手机', '电脑'] %} {% set new_products = original_products|merge(['平板']) %} {# new_products 现在为 ['手机', '电脑', '平板'] #}
3. 检查数组是否为空
使用empty测试快速判断数组是否为空,也可通过length过滤器判断长度是否为0:
方法一(推荐,更简洁):
{% if 目标数组 is empty %} 数组为空时的执行逻辑 {% else %} 数组非空时的执行逻辑 {% endif %}
方法二:
{% if 目标数组|length == 0 %} 数组为空时的执行逻辑 {% else %} 数组非空时的执行逻辑 {% endif %}
示例:检查产品列表是否为空
{% if products is empty %} 暂无可用产品 {% else %} 产品清单: {% for item in products %} - {{ item }} {% endfor %} {% endif %}
内容的提问来源于stack exchange,提问作者OneMinute
相关产品推荐
相关产品推荐

