2015-01-02 62 views

回答

1

Ternary Operator

$a = ''; 
$b = 1; 

echo $a ?: $b; // 1 

直到$被評估爲假,$ B將被顯示出來。請記住下面的事情被認爲是empty

"" (an empty string) 
0 (0 as an integer) 
0.0 (0 as a float) 
"0" (0 as a string) 
NULL 
FALSE 
array() (an empty array) 
$var; (a variable declared, but without a value) 

這意味着,如果$ a 「」,0, 「」,空,假,陣列()..然後$ B將顯示0 。見PHP type comparison tables

如果你想顯示$ B只有當$ a是一個空字符串,那麼你應該使用嚴格的比較操作符(===)

$a = ''; 
$b = 1; 

echo $a === '' ? $b : ''; // 1 
1

這是在PHP中IF/Else聲明的簡寫。

echo ($a != '' ? $a : $b) 

$a如果不是空串輸出(回波)$a否則輸出$ B。