很难找到用词来表达这个词,但每个使用三元的例子总是使用单一条件
$x = ($x > 1) ? 1 : 0;
$x = (any single evaluation) ? if true : if false;
上面,我发现的所有例子都是结构化的。
我的问题是关于下面的结构,特别是在这里使用&&
$x = (($x > 1) && ($z === 0)) ? 1 : 0;
所以我的问题是,使用我上面最后一个例子的格式是不赞成还是引起问题,因为我从未见过它的使用或其解释的好处/损害。
答案 0 :(得分:2)
唯一可能的问题是你的病情越复杂,阅读就越难。有一点,它比三元运算符替代方案更容易阅读if( ... ) {$x = 1;} else {$x = 0;}
。
答案 1 :(得分:0)
这是关于可读性和风格。
我通常只使用三元运算符非常简单的设置。
那是:
$x = isset($y) ? $y : "default";
比这更复杂的东西应该转到if语句。
然而,这是我个人的写作风格。采用自己的一个并坚持下去。