在PHP7,一個新的功能,空合併運算子(??)已被引入。它被用來代替三元運算並與 isset()函式功能結合一起使用。如果它存在並且它不是空的,空合併運算子返回它的第一個運算元;否則返回第二個運算元。
範例
<?php
// fetch the value of $_GET['user'] and returns 'not passed'
// if username is not passed
$username = $_GET['username'] ?? 'not passed';
print($username);
print("<br/>");
// Equivalent code using ternary operator
$username = isset($_GET['username']) ? $_GET['username'] : 'not passed';
print($username);
print("<br/>");
// Chaining ?? operation
$username = $_GET['username'] ?? $_POST['username'] ?? 'not passed';
print($username);
?>
這將在瀏覽器產生輸出以下結果-
not passed
not passed
not passed