在PHP中评估三元运算符

时间:2014-01-20 06:29:39

标签: php

echo strlen('Hello World') > 2 ? '...' : '' . substr('Hello World',0,2);

以上代码输出:

...

我除了

...He

任何人都可以解释如何在php中评估上述代码

修改

echo substr('Hello World',0,2) . strlen('Hello World') > 2 ? '...' : '';

输出

NO OUTPUT

但这有效

echo substr('Hello World',0,2), strlen('Hello World') > 2 ? '...' : '';

输出

He...

2 个答案:

答案 0 :(得分:5)

它的评估如下:

echo strlen('Hello World') > 2 ? '...' : ('' . substr('Hello World',0,2));

你可能想要的是:

echo (strlen('Hello World') > 2 ? '...' : '') . substr('Hello World',0,2);

答案 1 :(得分:1)

与if-condition相同:

if(strlen('Hello World') > 2) {
    echo '...';
} else {
    echo '' . substr('Hello World',0,2);
}