PHP 7 に新しく追加された NULL 合体演算子 (??) は、isset() によって検出される三項演算を実行するためのショートカットです。
NULL 合体演算子は変数が存在するかどうかを判断し、値が NULL でない場合は独自の値を返し、そうでない場合は 2 番目のオペランドを返します。
以前は次のように三項演算子を書いていました:
$site = isset($_GET['site']) ? $_GET['site'] : 'php中文网';
今では次のように直接書くことができます:
$site = $_GET['site'] ?? 'php中文网';
例
<?php // 获取 $_GET['site'] 的值,如果不存在返回 'php中文网' $site = $_GET['site'] ?? 'php中文网'; print($site); echo "<br/>"; // PHP_EOL 为换行符 // 以上代码等价于 $site = isset($_GET['site']) ? $_GET['site'] : 'php中文网'; print($site); echo "<br/>"; // ?? 链 $site = $_GET['site'] ?? $_POST['site'] ?? 'php中文网'; print($site); ?>
上記のプログラムの実行の出力結果は次のとおりです:
php中文网 php中文网 php中文网