2017-08-24 84 views
0

有什麼關係什麼是對「或」組條件之間的區別樹枝

{%的區別,如果(colorTab.about爲空)或(colorTab.services爲空)或 (colorTab.annonces是空的)}

{%如果(colorTab.about或colorTab.services或 colorTab.annonces)爲空}

+0

返回true對於我第一個工作正常,但第二個不能正常工作 –

回答

1

不同的是,第一個發言的任何變量可以是空的,至於第二條語句,你實際上可以用下面的一個

{% if (colorTab.about is empty) and (colorTab.services is empty) and (colorTab.annonces is empty) %} 

那是因爲你要替換聲明在調用函數twig_is_empty之前先替換每個變量。嫩枝將編譯聲明成以下PHP代碼

if (twig_is_empty($var1 || $var2 || $var3) {

因此這將成爲無論是if (twig_is_empty(true) {if (twig_is_empty(false) {上運行。這意味着只有3個non-empty值的組合可以爲功能twig_is_emtpy


供應商/樹枝/枝條/ LIB /枝條/擴展/ core.php中,線1405

function twig_test_empty($value) 
{ 
    if ($value instanceof Countable) { 
    return 0 == count($value); 
    } 

    return '' === $value || false === $value || null === $value || array() === $value; 
} 
相關問題