簡體   English   中英

如何在PHP中使用三元運算符嵌套if和else語句?

[英]how to nest if and else statement using ternary operator in PHP?

與使用此三元運算符相混淆,如果和其他情況,我可以輕松獲得1級

($blah == $blah) ? blahblah : blahblahblah;

但是如果條件是這樣呢?

if($blah == blah1)
{ 
  echo $blah1;
}
else if($blah == blah2)
{
 echo $blah2;
}
else
{
 echo $blah;
}

如何使用三元運算符轉換?

<?php echo $blah == 'blah1' ? $blah1 : ($blah == 'blah2' ? $blah2 : $blah); ?>

注意else如何用括號括起來。 盡管它會使閱讀變得混亂,但可以一次又一次地進行。

嵌套的三元組是個壞主意。 提供它們是為了簡潔。 如果您具有嵌套條件,那么根據定義,您就不那么簡短了。

當您有一個簡潔的陳述時,有些人甚至不喜歡他們的用法。 我個人認為以下內容比基於if的替代方法更清晰易讀。

echo $success ? 'Success' : 'Failure';

但是我會做任何比這更復雜的事情。

($ blah == $ blah1)嗎? $ blah1:((($ blah == $ blah2)?$ blah2:$ blah);

它將變成:

echo (($blah == $blah1) ? $blah1 : (($blah == blah2) ? $blah2 : $blah);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM