PHP7 null 合併運算子注意事項

lockdown56發表於2018-03-29

php7 新增了 null 合併運算子 ??,剛開始接觸的時候沒有仔細看文件,還一直納悶這跟三元運算子的省略寫法 ( ?: ) 什麼區別.

$a = '';
$b = 'bbb';
var_dump($a ?? $b); // 輸出: string ''
var_dump($a ?: $b); // 輸出: string 'bbb'

$a = false;
$b = 'bbb';
var_dump($a ?? $b); // 輸出: boolean false
var_dump($a ?: $b); // 輸出: string 'bbb'

$a = null;
$b = 'bbb';
var_dump($a ?? $b); // 輸出: string 'bbb'
var_dump($a ?: $b); // 輸出: string 'bbb'

也就是隻有$a 為 null 時才會輸出 $b

相關文章