【发布时间】:2011-02-09 03:53:19
【问题描述】:
我被要求执行这个三元运算符使用的操作:
$test='one';
echo $test == 'one' ? 'one' : $test == 'two' ? 'two' : 'three';
打印两个(使用 php 检查)。
我仍然不确定这样做的逻辑。拜托,谁能告诉我这个的逻辑。
【问题讨论】:
-
哦,我的……我的眼睛……在燃烧……它不可能看不见……
-
还不错。在其他语言中,这将是一个成语。在 PHP 中,由于其选择不当的运算符关联性,这是一个陷阱。
-
@bobince 你用其他语言试过吗,或者你只是假设这个
-
C 和大多数基于其语法的语言(C#、Java、JavaScript...)给出
one。 Wiki(公平地说,IMO)将 PHP 的行为描述为“语言语法中的不幸错误”。 en.wikipedia.org/wiki/%3F:#PHP -
我想我们大多数人都明白了,对不起,但只能选择 1
标签: php logic ternary-operator logical-operators