在以下Twig代码段中(请参见https://twigfiddle.com/agvgz9)
{{ 0.0 is same as (0.0) ? 'Yes' : 'No' }}
{{ val is same as (0.0) ? 'Yes' : 'No' }}
输出结果如下
Yes
No
dump(val)
输出float(0)
人们期望第二个表达式的值为Yes
,但是为什么不这样呢?我会理解,例如val = 0.0000000001;
是否失败,但是根据转储,显然不是这样。
在php -a
中使用
$val = 0.0;
$echo $val === 0.0 ? 'Yes' : 'No';
得到Yes
,与预期的一样。
这可以视为Twig的错误吗?
使用Twig 2.5.0版,也尝试将其升级到2.6.0。