以下PHP三元条件的Twig等效项是什么?
<?php echo (isset($myVar) && !empty($myVar)) ? $myVar : '#button-cart'; ?>
我曾尝试过这种方法,但它看起来并不好,当然也行不通:
{{ myVar is defined and myVar not empty ? myVar : '#button-cart' }}
有关所有测试,请参见测试。要使用测试,请使用variable is test
。您在“空”测试中缺少“是”。感谢@DarkBee指出了这个小错误。
但是要回答您的第一个问题,请看一下Twig / Extension / Core.php。该类说明了每个Twig测试是如何在“幕后”进行的。
这是一张包含所有测试及其等效PHP的小表:
| Twig test | PHP method used |
|--------------|---------------------------------------------------|
| constant | constant |
| defined | defined |
| divisible by | % |
| empty | twig_test_empty |
| even | % 2 == 0 |
| iterable | $value instanceof Traversable || is_array($value) |
| null | null === |
| odd | % 2 == 1 |
| same as | === |
twig_test_empty
检查:
count(array) === 0
或Object::__toString === ''
或'' === $value || false === $value || null === $value || array() === $value
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句