PHP7 ?? と?:の役割と区別
784 ワード
私たちはよくこのような判断コードを書きます.
PHP 7は新語法糖があり、簡略化されている(PHPバージョンは7より大きくなければならない)
彼らの違いは null連結演算子 :?? 判定変数が存在しないかNULL null条件演算子:?:変数が空の であるか否かも判断する.
?? NULLかどうかも判断します
//
$a = isset($b) ? $b : $c;
//
$a = !empty($b) ? $b : $c;
PHP 7は新語法糖があり、簡略化されている(PHPバージョンは7より大きくなければならない)
//
$a = $b ?? $c; // $a = isset($b) ? $b : $c;
//
$a = $b ?: $c; // $a = !empty($b) ? $b : $c;
彼らの違いは
$a = [];
print_r($a ?? ' ');
// []
print_r($a ?: ' ');
// ' '
?? NULLかどうかも判断します
$a = null;
print_r($a ?? ' ');
//