📅  最后修改于: 2023-12-03 15:33:39.897000             🧑  作者: Mango
php??
在 PHP 7.0 中,引入了运算符 ??
。这个运算符被称为null 合并运算符
,它可以在 变量赋值 的时候用到。具体来说,它的作用是当左操作数为 null
或不存在时,返回右操作数,否则返回左操作数。
$var = $a ?? $b;
上面的代码等同于:
if (isset($a)) {
$var = $a;
} else {
$var = $b;
}
$name = $_GET['name'] ?? '未知用户';
上面代码中,如果 $_GET['name']
存在,就将它赋值给 $name
,否则将 $name
设为 '未知用户'。
另一个例子:
$cookie_val = $_COOKIE['key'] ?? $_POST['key'] ?? 'default';
上面的代码中,如果 $_COOKIE['key']
存在,则将 $cookie_val
设为它。如果不存在,就检查 $_POST['key']
是否存在。如果 $_POST['key']
存在,则将 $cookie_val
设为它。否则将 $cookie_val
设为 'default'。
??
运算符的优先级较低,需要用括号显式地指定优先级。php??
运算符为我们提供了一种更简洁的方式来检查变量是否为 null
或不存在,并在此情况下进行默认赋值。
更多关于 php??
运算符的详细内容,可以参考官方文档:Null Coalescing Operator - PHP Manual。