与使用这个三元运算符相混淆,如果不是,我可以轻松获得1级 e.g
($blah == $blah) ? blahblah : blahblahblah;
但如果条件是这样的话怎么办?
if($blah == blah1)
{
echo $blah1;
}
else if($blah == blah2)
{
echo $blah2;
}
else
{
echo $blah;
}
如何使用三元运算符转换它?
答案 0 :(得分:5)
<?php echo $blah == 'blah1' ? $blah1 : ($blah == 'blah2' ? $blah2 : $blah); ?>
注意else
如何包含在括号中。这可以一次又一次地完成,尽管阅读会让人感到困惑。
答案 1 :(得分:3)
嵌套三元是一个坏主意。它们是为了简洁而提供的。如果您有嵌套条件,则根据定义,您没有简洁。
当你有一个简洁的陈述时,有些人甚至不喜欢他们的用法。就个人而言,我发现以下内容比基于if
的替代方案更清晰,更易读。
echo $success ? 'Success' : 'Failure';
但我会毫不犹豫地做更复杂的事情。
答案 2 :(得分:1)
($ blah == $ blah1)? $ blah1:(($ blah == $ blah2)?$ blah2:$ blah);
答案 3 :(得分:0)
它会变成:
echo (($blah == $blah1) ? $blah1 : (($blah == blah2) ? $blah2 : $blah);