php三元運算的2種寫法**例項首先,我們現在看乙個簡單的例子:
**如下:
<?php//寫法一:
$a = 2;
($a == 1) ? $test = "我們" : $test = "你們";
echo $test;
?>
上述例子呢,先判斷$a是否為1 如果是 將「我們」這個字串存入$test變數裡然後輸出,如果不是 將「你們」這個字串存入$test變數裡然後輸出;
上訴例子**等價於:
**如下:
<?php//寫法二:
$a = 2;
echo $test = ($a == 1) ? "我們" : "你們";
#寫法三
if($a == 1)else
echo $test;
?>
複雜點例子
$i = 2; echo $i == 2 ? "a" : $i == 1 ? 'b' : 'c';
實際執行順序是
($i == 2 ? "a" : $i == 1 )? 'b' : 'c';
相當於a ? 'b' : 'c'
;a為真,所以是b
從左向右執行
echo $a == 1 ? 'one' : $a == 2 ? 'two' : $a == 3 ? 'three' : $a == 4 ? 'foura' : 'other';
實際執行順序是
echo ( ((($a == 1 ? 'one' : $a == 2) ? 'two' : $a == 3 )? 'three' : $a == 4 )? 'four' : 'other');
//結果是four;
PHP 三元運算子省略寫法
三元運算子 又名條件運算子 表示式 expr1 expr2 expr3 在 expr1 求值為true時的值為 expr2,在 expr1 求值為false時的值為 expr3。自 php 5.3 起,可以省略三元運算子中間那部分。表示式 expr1 expr3 在 expr1 求值為true時返回...
PHP 三元運算子
a a a 1 第一種 a a 1 第二種第二種寫法從 php 5.3 引入,表示若 a 返回值為真時,取 a 的返回值。此外,在 php7 中引入了?運算子 a a 1 該表示式與第二種寫法類似,可以達到相同的效果。但?運算子是以判斷 a 變數是否存在於上下文環境中作為條件,而三元運算子不具備這種...
php的三元運算子 和
1.expr1 expr2 expr3 表示式 expr1 expr2 expr3 在 expr1 求值為true時的值為 expr2,在 expr1 求值為false時的值為 expr3。其中false的值的判斷跟 if expr1 一樣,包括空字串 false 為空empty null 0 0....