Twig {% if myId in myArray %} 不检查唯一值



我有一个 ID,我需要根据 ID 数组进行检查。

当我这样做时:

{% if myId in myArray %}

如果我在 ' 10'11''12' 的数组中检查类似 '10' 的东西,它会起作用。但是,如果我在"10"、"11"、"12"的同一数组中检查"1",则结果为 true,因为列出的值中存在'1'(在这种情况下,'0' 或 ' 2 ' 也会结果为 true)。显然,我希望这会导致 false,因为确切的整数 ' 1' 实际上并不存在于数组中。

有没有办法让 twig 在使用此函数时检查唯一或精确的整数值?

正如 Maerlyn 在 Twig 的 in 关键字上的源代码中指出的那样,很明显你的问题是由你的值是字符串引起的。

事实上,twig 认为"1"存在于"12"

中,因为他不知道"12"是一个整数,它也可能与"数字 1"或任何其他字符串相反。

因此,解决方案是先将数组内容转换为整数。然后将其发送给Twig。

最新更新