2010-11-29 87 views
35

twig中,有没有简单的方法来测试2个变量的相等性?在树枝中测试变量相等

{% if var1 = var2 %}是无效的,只有{% if var1 is sameas(var2) %}如果两者都弦乐作品...

(来自文件)“sameAs的检查,如果一个变量指向相同的内存地址比另一个变量”,像这就是有用的。

所以我发现比较整数的唯一途径是他们两个转换为字符串:
{% if var1|lower is sameas(var2|lower) %}

回答

56

据我所知嫩枝支持所有标准的逻辑运算符==, !=, <, >, >=, and <=.同样的,你的第一个示例{% if var1 = var2 %}不检查相等性,它将var2指定为var1,您可能想要将其更改为比较运算符==

内置测试的Twig sameas,本质上是一个严格类型比较运算符===,因此为什么它们都需要在你的例子中是字符串。

+6

干杯,文档不会使它明显。 – Sam 2010-11-29 11:12:51

1

如果您比较具有数值值可以使用:

{% if (psong.songid) ==(song.id) %}