php中三元運算符號又被叫做三目運算子了,其實我常把它叫作問號運算子其實都可以這樣做,三元運算符可以實現簡單的條件判斷功能,下在我來為各位介紹一些三元運算子的例子。
三元運算子的功能與「if....else」流程語句一致,它在一行中書寫,程式碼精練、執行效率高。在PHP程式中適當地使用三元運算子能讓腳本更為簡潔、更有效率。程式碼的語法如下:
(expr1)?(expr2):(expr3); //表达式1?表达式2:表达式3
解釋:如果條件「expr1」成立,則執行語句「expr2」,否則執行「expr3」。
<?PHP $a=10; $b=20; $c=$a>$b?($a-$b):($a+$b); //说明:如果变量a大于变量b则执行问号后面的,否则就执行:冒号后面的 echo $c; ?>
#表達式裡可以是函數、陣列等等。
事實上,三元運算子可以擴充使用,當設定的條件成立或不成立,執行語句都可以不只一句,試看以下格式:
(expr1) ? (expr2).(expr3) : (expr4).(expr5);
我們非常明顯地看到,多個執行語句可以使用用字串運算子號(“.”)連接起來,各執行語句用小角括號包圍起來以表明它是一個獨立而完整的執行語句。這樣擴充後它的功能更為逼近「if...else」流程語句。
同時三元運算子還可以巢狀使用。例如,a大於b成立時:如果a小於c,那麼x=c-a否則x=a-c;否則a小於b成立時:如果b小於c,那麼x=c-b否則x=b-c:
$a>$b ? $x=($a<$c ? $c-$a : $a-$c) : $x=($b<$c ? $c-$b : $b-$c);
嵌套使用的三元運算子可讀性不太好,日後對程式碼的維護極可能有問題,所以像這種情況我們還是直接使用if else if 來實現吧。
以上是php 三元運算子詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!