测试树枝中的变量相等性
在 twig 中,是否有一种简单的方法来测试两个变量的相等性?
{% if var1 = var2 %}
无效,{% if var1 is Sameas(var2) %}
仅当两者都是字符串时才有效...
(来自文档)“sameas 检查一个变量是否指向与另一个变量相同的内存地址”,这样很有用。
因此,我发现比较整数的唯一方法是将它们都转换为字符串:{% if var1|lower is Sameas(var2|lower) %}
In twig, is there an easy way to test the equality of 2 variables?
{% if var1 = var2 %}
isn't valid, {% if var1 is sameas(var2) %}
only works if both are a strings...
(from docs) "sameas checks if a variable points to the same memory address than another variable", like thats useful.
So the only way I've found of comparing integers is to convert them both to strings:{% if var1|lower is sameas(var2|lower) %}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
据我所知,Twig 支持所有标准逻辑运算符
==、!=、<、>、>= 和 <=。
另外,您的第一个示例{% if var1 = var2 %}
不检查相等性,它将var2
分配给var1
,您可能需要将其更改为比较运算符 <代码>==。测试中内置的 Twig
sameas
本质上是一个严格的类型比较运算符===
,因此为什么它们在示例中都需要是字符串。As far as I'm aware Twig supports all of the standard logical operators
==, !=, <, >, >=, and <=.
Also, your first example{% if var1 = var2 %}
does not check for equality, it assignsvar2
tovar1
, you might want to change it to the comparison operator==
.The Twig
sameas
built in test, is essentially a strict type comparison operator===
, hence why they both need to be strings in your example.如果您要比较具有数值的值,您可以使用:
If you are comparing value which have a numeric value you can use: