在php中,三元運算子用於根據第一個表達式的結果在另外兩個表達式中選擇一個並執行,語法「(expr1)?(expr2):(expr3); ”;如果第一個表達式“expr1”成立,則執行第二個表達式“expr2”,否則執行“expr3”表達式。
本教學操作環境:windows7系統、PHP7.1版,DELL G3電腦
在PHP 中,三元運算符可以實現簡單的條件判斷功能,即根據第一個表達式的結果在另外兩個表達式中選擇一個並執行,三元運算符也被稱為三目運算符或條件運算符。
三元運算子的功能與「if else」語句一致,它可以在一行中書寫,程式碼精練、執行效率更高。在 PHP 程式中適當地使用三元運算子能讓腳本更為簡潔、更有效率。
三元運算子的語法格式如下:
(expr1)?(expr2):(expr3); //表达式1?表达式2:表达式3
如果條件“expr1”成立,則執行語句“expr2”,否則執行“expr3”。
範例程式碼如下:
<?php $a = 10; $a % 2 == 0 ? print '$a 是偶数!' : print '$a 是奇数!'; ?>
運行結果如下:
$a 是偶数!
另外expr2 和expr3 也可以使用單引號('')或雙引號("")來省略其中的任何一個,來避免不必要的程式碼,如下所示:
<?php $a = 10; $b = 7; $a % 2 == 0 ? print '$a 是偶数!<br>' : ""; $b % 2 == 0 ? '' : print '$b 是奇数!'; ?>
運行結果如下:
$a 是偶数! $b 是奇数!
注意:使用三元運算子時,如果需要列印字串,建議使用print 語句替代echo 語句。
不僅如此,三元運算子還可以擴充使用,當設定的條件成立或不成立,執行語句都可以不只一句,語法格式如下:
(expr1) ? (expr2).(expr3) : (expr4).(expr5);
可以看到,多個執行語句之間可以使用用字串運算子「.」連接起來,各個執行語句用小括號包裹起來以表明它是一個獨立而完整的執行語句。
同時三元運算子也可以巢狀使用,範例如下所範例:
<?php $a = 10; $b = 6; $c = 12; $x = $a>$b ? ($a<$c ? $c-$a : $a-$c) : ($b<$c ? $c-$b : $b-$c); echo '$x ='.$x; ?>
注意,第五行的賦值運算會等待三元運算子執行完後才會執行。
運行結果如下:
$x =2
嵌套使用的三元運算子雖然可以節省很多程式碼,但是可讀性不太好,日後程式碼維護起來也很不方便,所以像這種情況我們盡量使用if else 語句來實作。
推薦學習:《PHP影片教學》
以上是php中三元運算子怎麼用的詳細內容。更多資訊請關注PHP中文網其他相關文章!