Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
在twig中,是否有一种简单的方法来测试 2 个变量的相等性?
{% if var1 = var2 %}无效,{% if var1 is sameas(var2) %}仅当两者都是字符串时才有效...
{% if var1 = var2 %}
{% if var1 is sameas(var2) %}
(来自文档)“sameas 检查一个变量是否指向与另一个变量相同的内存地址”,这很有用。
所以我发现比较整数的唯一方法是将它们都转换为字符串: {% if var1|lower is sameas(var2|lower) %}
{% if var1|lower is sameas(var2|lower) %}
据我所知,Twig 支持所有标准逻辑运算符==, !=, <, >, >=, and <=.此外,您的第一个示例{% if var1 = var2 %}不检查相等性,它分配var2给var1,您可能希望将其更改为比较运算符==。
==, !=, <, >, >=, and <=.
var2
var1
==
Twigsameas内置测试本质上是一个严格的类型比较运算符===,因此在您的示例中它们都需要是字符串。
sameas
===
如果您正在比较具有数值的值,您可以使用:
{% if (psong.songid) ==(song.id) %}